Class: HtmlBeautifier::HtmlParser

Inherits:
Parser
  • Object
show all
Defined in:
lib/htmlbeautifier/html_parser.rb

Constant Summary collapse

ELEMENT_CONTENT =
%r{ (?:[^<>]|<%.*?%>)* }mx

Instance Method Summary collapse

Methods inherited from Parser

debug, debug_block, #map, #scan, #source_line_number, #source_so_far

Constructor Details

#initializeHtmlParser

Returns a new instance of HtmlParser.



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/htmlbeautifier/html_parser.rb', line 7

def initialize
  super do |p|
    p.map %r{(<%-?=?)(.*?)(-?%>)}m,                           :embed
    p.map %r{<!--\[.*?\]>}m,                                  :open_ie_cc
    p.map %r{<!\[.*?\]-->}m,                                  :close_ie_cc
    p.map %r{<!--.*?-->}m,                                    :standalone_element
    p.map %r{<!.*?>}m,                                        :standalone_element
    p.map %r{(<script#{ELEMENT_CONTENT}>)(.*?)(</script>)}m,  :foreign_block
    p.map %r{(<style#{ELEMENT_CONTENT}>)(.*?)(</style>)}m,    :foreign_block
    p.map %r{<#{ELEMENT_CONTENT}/>}m,                         :standalone_element
    p.map %r{</#{ELEMENT_CONTENT}>}m,                         :close_element
    p.map %r{<#{ELEMENT_CONTENT}>}m,                          :open_element
    p.map %r{\s+},                                            :whitespace
    p.map %r{[^<]+},                                          :text
  end
end