class WWWJDic::Splitter
This class is a simple API to interact with WWWJDic
Backboor Entry/API.
- Author
- Copyright
-
© 2014-2021 Marco Bresciani
- License
-
GNU General Public License version 3
Public Class Methods
new(translation)
click to toggle source
Creates a Splitter
object.
- Usage
-
new_splitter = Splitter.new translation_content
- Returns
-
a
Splitter
object.
# File lib/wwwjdic/utils/splitter.rb 44 def initialize(translation) 45 @translation = translation.force_encoding('UTF-8') 46 end
Public Instance Methods
content()
click to toggle source
@return [Array] the arrays of elements containing the answer
# File lib/wwwjdic/utils/splitter.rb 72 def content 73 result = [] 74 lines.each do |a_line| 75 inner = {} 76 fill_inner_data(a_line, inner) 77 inner[:meanings] = inner[:text].split('/') if inner[:text].include? '/' 78 result.push inner unless inner.empty? 79 end 80 81 result unless result.empty? 82 end
lines()
click to toggle source
# File lib/wwwjdic/utils/splitter.rb 62 def lines 63 result = [] 64 translation.each_line do |a_line| 65 stripped_line = a_line.strip 66 result.push stripped_line unless stripped_line.empty? 67 end 68 result unless result.empty? 69 end
message()
click to toggle source
# File lib/wwwjdic/utils/splitter.rb 56 def message 57 return Regexp.last_match(1).strip unless @translation.nil? || !/<p>(.*)<p>/m.match(@translation) 58 59 Regexp.last_match(1) if @translation.nil? && /<p>(.*)<pre>/m.match(@translation) 60 end
title()
click to toggle source
# File lib/wwwjdic/utils/splitter.rb 48 def title 49 Regexp.last_match(1) if %r{<TITLE>(.*)</TITLE>}.match @translation 50 end
translation()
click to toggle source
# File lib/wwwjdic/utils/splitter.rb 52 def translation 53 Regexp.last_match(1).strip if %r{<pre>(.*)</pre>}m.match @translation 54 end