Class: PragmaticSegmenter::Process

Inherits:
Object
  • Object
show all
Defined in:
lib/pragmatic_segmenter/process.rb

Overview

This class processing segmenting the text.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(text:, language: Languages::Common) ⇒ Process

Returns a new instance of Process.



15
16
17
18
# File 'lib/pragmatic_segmenter/process.rb', line 15

def initialize(text:, language: Languages::Common)
  @text = text
  @language = language
end

Instance Attribute Details

#textObject (readonly)

Returns the value of attribute text.



14
15
16
# File 'lib/pragmatic_segmenter/process.rb', line 14

def text
  @text
end

Instance Method Details

#processObject



20
21
22
23
24
25
26
27
28
# File 'lib/pragmatic_segmenter/process.rb', line 20

def process
  reformatted_text = List.new(text: text).add_line_break
  reformatted_text = replace_abbreviations(reformatted_text)
  reformatted_text = replace_numbers(reformatted_text)
  reformatted_text = replace_continuous_punctuation(reformatted_text)
  reformatted_text.apply(@language::AbbreviationsWithMultiplePeriodsAndEmailRule)
  reformatted_text.apply(@language::GeoLocationRule)
  split_into_segments(reformatted_text)
end