unescape HTML : Regexps Group « Development « Ruby

Home
Ruby
1.ActiveRecord
2.Array
3.CGI
4.Class
5.Collections
6.Database
7.Date
8.Design Patterns
9.Development
10.File Directory
11.GUI
12.Hash
13.Language Basics
14.Method
15.Network
16.Number
17.Rails
18.Range
19.Reflection
20.Statement
21.String
22.Threads
23.Time
24.Tk
25.Unit Test
26.Windows Platform
27.XML
Ruby » Development » Regexps Group 




unescape HTML


def unescapeHTML(string
    str = string.dup 
    str.gsub!(/&(.*?);/n) { 
        match = $1.dup 
        case match 
        when /\Aamp\z/ni then '&' 
        when /\Aquot\z/ni then '"' 
        when /\Agt\z/ni then '>' 
        when /\Alt\z/ni then '<' 
        when /\A#(\d+)\z/n then Integer($1).chr 
        when /\A#x([09af]+)\z/ni then $1.hex.chr 
        end 
    
    str 
end 
puts unescapeHTML("1&lt;2 &amp;&amp; 4&gt;3"
puts unescapeHTML("&quot;A&quot; = &#65; = &#x41;"

 














Related examples in the same category
1.An unescaped vertical bar(|) matches either the regular expression that precedes it or the regular expression that follows it.
2.use parentheses to group terms within a regular expression
3.\1 refers to the match of the first group
4.Backslash Sequences in the Substitution
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.