Module | FeedParser |
In: |
lib/feedparser/sgml-parser.rb
lib/feedparser/text-output.rb lib/feedparser/html-output.rb lib/feedparser/html2text-parser.rb lib/feedparser/feedparser.rb |
A parser for SGML, using the derived class as static DTD. from raa.ruby-lang.org/project/html-parser
VERSION | = | "0.6" |
# File lib/feedparser/feedparser.rb, line 276 276: def FeedParser::getcontent(e, feed = nil) 277: encoding = feed ? feed.encoding : 'utf-8' 278: children = e.children.reject do |i| 279: i.class == REXML::Text and i.to_s.chomp == '' 280: end 281: if children.length > 1 282: s = '' 283: children.each do |c| 284: s += c.to_s if c.class != REXML::Comment 285: end 286: return s.toUTF8(encoding).rmWhiteSpace!.text2html(feed) 287: elsif children.length == 1 288: c = children[0] 289: if c.class == REXML::Text 290: return e.text.toUTF8(encoding).rmWhiteSpace!.text2html(feed) 291: elsif c.class == REXML::CData 292: return c.to_s.toUTF8(encoding).rmWhiteSpace!.text2html(feed) 293: elsif c.class == REXML::Element 294: # only one element. recurse. 295: return getcontent(c, feed) 296: elsif c.text 297: return c.text.toUTF8(encoding).text2html(feed) 298: end 299: end 300: end