Sha256: 0c8de30e2e67a129084dc385b1afe39634b31a58d8a32747e473593ca4934a47

Contents?: true

Size: 912 Bytes

Versions: 4

Compression:

Stored size: 912 Bytes

Contents

##
# Remove inflectional particle
# Asian J. (2007) "Effective Techniques for Indonesian Text Retrieval" page 60
# http://researchbank.rmit.edu.au/eserv/rmit:6312/Asian.pdf

module Sastrawi
  module Stemmer
    module Context
      module Visitor
        class RemoveInflectionalParticle
          def visit(context)
            result = remove(context.current_word)

            if result != context.current_word
              removed_part = context.current_word.sub(/#{Regexp.quote(result)}/, '')

              removal = Removal.new(self, context.current_word, result, removed_part, 'P')

              context.add_removal(removal)
              context.current_word = result
            end
          end

          ##
          # Remove inflectional particle: lah|kah|tah|pun

          def remove(word)
            word.sub(/-*(lah|kah|tah|pun)$/, '')
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sastrawi-0.1.4 lib/sastrawi/stemmer/context/visitor/remove_inflectional_particle.rb
sastrawi-0.1.3 lib/sastrawi/stemmer/context/visitor/remove_inflectional_particle.rb
sastrawi-0.1.2 lib/sastrawi/stemmer/context/visitor/remove_inflectional_particle.rb
sastrawi-0.1.1 lib/sastrawi/stemmer/context/visitor/remove_inflectional_particle.rb