class Sep::Separator
Constants
- ANALYSIS
Attributes
text[R]
words_data[R]
Public Class Methods
new(text)
click to toggle source
text - String text to separate
# File lib/sep/separator.rb, line 8 def initialize(text) @text = text analyze end
Public Instance Methods
leading_space()
click to toggle source
# File lib/sep/separator.rb, line 14 def leading_space text.match(/(\s*)/).captures[0] end
space()
click to toggle source
# File lib/sep/separator.rb, line 18 def space [leading_space] + words_data.map {|wd| wd[:space_post] } end
words()
click to toggle source
# File lib/sep/separator.rb, line 22 def words words_data.map {|wd| wd[:word] } end
Private Instance Methods
analyze()
click to toggle source
# File lib/sep/separator.rb, line 32 def analyze @words_data ||= scanned_text.map do |word_data| { punc_pre: word_data[0], word: word_data[1], punc_post: word_data[2], space_post: word_data[3] } end end
scanned_text()
click to toggle source
# File lib/sep/separator.rb, line 28 def scanned_text text.scan(ANALYSIS) end