Share Pastebin
Guest
Public paste!

DecodeHTMLEntities in Objective-C

By: a guest | Apr 14th, 2010 | Syntax: Objective C | Size: 8.55 KB | Hits: 472 | Expires: Never
Copy text to clipboard
  1. - (NSString *)decodeHTMLEntities:(NSString *)string {
  2.         // Reserved Characters in HTML
  3.         string = [string stringByReplacingOccurrencesOfString:@""" withString:@"\""];
  4.         string = [string stringByReplacingOccurrencesOfString:@"'" withString:@"'"];
  5.         string = [string stringByReplacingOccurrencesOfString:@"&" withString:@"&"];
  6.         string = [string stringByReplacingOccurrencesOfString:@"&lt;" withString:@"<"];
  7.         string = [string stringByReplacingOccurrencesOfString:@"&gt;" withString:@">"];
  8.        
  9.         // ISO 8859-1 Symbols
  10.         string = [string stringByReplacingOccurrencesOfString:@"&iexcl;" withString:@"¡"];
  11.         string = [string stringByReplacingOccurrencesOfString:@"&cent;" withString:@"¢"];
  12.         string = [string stringByReplacingOccurrencesOfString:@"&pound;" withString:@"£"];
  13.         string = [string stringByReplacingOccurrencesOfString:@"&curren;" withString:@"¤"];
  14.         string = [string stringByReplacingOccurrencesOfString:@"&yen;" withString:@"¥"];
  15.         string = [string stringByReplacingOccurrencesOfString:@"&brvbar;" withString:@"¦"];
  16.         string = [string stringByReplacingOccurrencesOfString:@"&sect;" withString:@"§"];
  17.         string = [string stringByReplacingOccurrencesOfString:@"&uml;" withString:@"¨"];
  18.         string = [string stringByReplacingOccurrencesOfString:@"&copy;" withString:@"©"];
  19.         string = [string stringByReplacingOccurrencesOfString:@"&ordf;" withString:@"ª"];
  20.         string = [string stringByReplacingOccurrencesOfString:@"&laquo;" withString:@"«"];
  21.         string = [string stringByReplacingOccurrencesOfString:@"&not;" withString:@"¬"];
  22.         string = [string stringByReplacingOccurrencesOfString:@"&shy;" withString:@"    "];
  23.         string = [string stringByReplacingOccurrencesOfString:@"&reg;" withString:@"®"];
  24.         string = [string stringByReplacingOccurrencesOfString:@"&macr;" withString:@"¯"];
  25.         string = [string stringByReplacingOccurrencesOfString:@"&deg;" withString:@"°"];
  26.         string = [string stringByReplacingOccurrencesOfString:@"&plusmn;" withString:@"±       "];
  27.         string = [string stringByReplacingOccurrencesOfString:@"&sup2;" withString:@"²"];
  28.         string = [string stringByReplacingOccurrencesOfString:@"&sup3;" withString:@"³"];
  29.         string = [string stringByReplacingOccurrencesOfString:@"&acute;" withString:@"´"];
  30.         string = [string stringByReplacingOccurrencesOfString:@"&micro;" withString:@"µ"];
  31.         string = [string stringByReplacingOccurrencesOfString:@"&para;" withString:@"¶"];
  32.         string = [string stringByReplacingOccurrencesOfString:@"&middot;" withString:@"·"];
  33.         string = [string stringByReplacingOccurrencesOfString:@"&cedil;" withString:@"¸"];
  34.         string = [string stringByReplacingOccurrencesOfString:@"&sup1;" withString:@"¹"];
  35.         string = [string stringByReplacingOccurrencesOfString:@"&ordm;" withString:@"º"];
  36.         string = [string stringByReplacingOccurrencesOfString:@"&raquo;" withString:@"»"];
  37.         string = [string stringByReplacingOccurrencesOfString:@"&frac14;" withString:@"¼"];
  38.         string = [string stringByReplacingOccurrencesOfString:@"&frac12;" withString:@"½"];
  39.         string = [string stringByReplacingOccurrencesOfString:@"&frac34;" withString:@"¾"];
  40.         string = [string stringByReplacingOccurrencesOfString:@"&iquest;" withString:@"¿"];
  41.         string = [string stringByReplacingOccurrencesOfString:@"&times;" withString:@"×"];
  42.         string = [string stringByReplacingOccurrencesOfString:@"&divide;" withString:@"÷"];
  43.        
  44.         // ISO 8859-1 Characters
  45.         string = [string stringByReplacingOccurrencesOfString:@"&Agrave;" withString:@"À"];
  46.         string = [string stringByReplacingOccurrencesOfString:@"&Aacute;" withString:@"Á"];
  47.         string = [string stringByReplacingOccurrencesOfString:@"&Acirc;" withString:@"Â"];
  48.         string = [string stringByReplacingOccurrencesOfString:@"&Atilde;" withString:@"Ã"];
  49.         string = [string stringByReplacingOccurrencesOfString:@"&Auml;" withString:@"Ä"];
  50.         string = [string stringByReplacingOccurrencesOfString:@"&Aring;" withString:@"Å"];
  51.         string = [string stringByReplacingOccurrencesOfString:@"&AElig;" withString:@"Æ"];
  52.         string = [string stringByReplacingOccurrencesOfString:@"&Ccedil;" withString:@"Ç"];
  53.         string = [string stringByReplacingOccurrencesOfString:@"&Egrave;" withString:@"È"];
  54.         string = [string stringByReplacingOccurrencesOfString:@"&Eacute;" withString:@"É"];
  55.         string = [string stringByReplacingOccurrencesOfString:@"&Ecirc;" withString:@"Ê"];
  56.         string = [string stringByReplacingOccurrencesOfString:@"&Euml;" withString:@"Ë"];
  57.         string = [string stringByReplacingOccurrencesOfString:@"&Igrave;" withString:@"Ì"];
  58.         string = [string stringByReplacingOccurrencesOfString:@"&Iacute;" withString:@"Í"];
  59.         string = [string stringByReplacingOccurrencesOfString:@"&Icirc;" withString:@"Î"];
  60.         string = [string stringByReplacingOccurrencesOfString:@"&Iuml;" withString:@"Ï"];
  61.         string = [string stringByReplacingOccurrencesOfString:@"&ETH;" withString:@"Ð"];
  62.         string = [string stringByReplacingOccurrencesOfString:@"&Ntilde;" withString:@"Ñ"];
  63.         string = [string stringByReplacingOccurrencesOfString:@"&Ograve;" withString:@"Ò"];
  64.         string = [string stringByReplacingOccurrencesOfString:@"&Oacute;" withString:@"Ó"];
  65.         string = [string stringByReplacingOccurrencesOfString:@"&Ocirc;" withString:@"Ô"];
  66.         string = [string stringByReplacingOccurrencesOfString:@"&Otilde;" withString:@"Õ"];
  67.         string = [string stringByReplacingOccurrencesOfString:@"&Ouml;" withString:@"Ö"];
  68.         string = [string stringByReplacingOccurrencesOfString:@"&Oslash;" withString:@"Ø"];
  69.         string = [string stringByReplacingOccurrencesOfString:@"&Ugrave;" withString:@"Ù"];
  70.         string = [string stringByReplacingOccurrencesOfString:@"&Uacute;" withString:@"Ú"];
  71.         string = [string stringByReplacingOccurrencesOfString:@"&Ucirc;" withString:@"Û"];
  72.         string = [string stringByReplacingOccurrencesOfString:@"&Uuml;" withString:@"Ü"];
  73.         string = [string stringByReplacingOccurrencesOfString:@"&Yacute;" withString:@"Ý"];
  74.         string = [string stringByReplacingOccurrencesOfString:@"&THORN;" withString:@"Þ"];
  75.         string = [string stringByReplacingOccurrencesOfString:@"&szlig;" withString:@"ß"];
  76.         string = [string stringByReplacingOccurrencesOfString:@"&agrave;" withString:@"à"];
  77.         string = [string stringByReplacingOccurrencesOfString:@"&aacute;" withString:@"á"];
  78.         string = [string stringByReplacingOccurrencesOfString:@"&acirc;" withString:@"â"];
  79.         string = [string stringByReplacingOccurrencesOfString:@"&atilde;" withString:@"ã"];
  80.         string = [string stringByReplacingOccurrencesOfString:@"&auml;" withString:@"ä"];
  81.         string = [string stringByReplacingOccurrencesOfString:@"&aring;" withString:@"å"];
  82.         string = [string stringByReplacingOccurrencesOfString:@"&aelig;" withString:@"æ"];
  83.         string = [string stringByReplacingOccurrencesOfString:@"&ccedil;" withString:@"ç"];
  84.         string = [string stringByReplacingOccurrencesOfString:@"&egrave;" withString:@"è"];
  85.         string = [string stringByReplacingOccurrencesOfString:@"&eacute;" withString:@"é"];
  86.         string = [string stringByReplacingOccurrencesOfString:@"&ecirc;" withString:@"ê"];
  87.         string = [string stringByReplacingOccurrencesOfString:@"&euml;" withString:@"ë"];
  88.         string = [string stringByReplacingOccurrencesOfString:@"&igrave;" withString:@"ì"];
  89.         string = [string stringByReplacingOccurrencesOfString:@"&iacute;" withString:@"í"];
  90.         string = [string stringByReplacingOccurrencesOfString:@"&icirc;" withString:@"î"];
  91.         string = [string stringByReplacingOccurrencesOfString:@"&iuml;" withString:@"ï"];
  92.         string = [string stringByReplacingOccurrencesOfString:@"&eth;" withString:@"ð"];
  93.         string = [string stringByReplacingOccurrencesOfString:@"&ntilde;" withString:@"ñ"];
  94.         string = [string stringByReplacingOccurrencesOfString:@"&ograve;" withString:@"ò"];
  95.         string = [string stringByReplacingOccurrencesOfString:@"&oacute;" withString:@"ó"];
  96.         string = [string stringByReplacingOccurrencesOfString:@"&ocirc;" withString:@"ô"];
  97.         string = [string stringByReplacingOccurrencesOfString:@"&otilde;" withString:@"õ"];
  98.         string = [string stringByReplacingOccurrencesOfString:@"&ouml;" withString:@"ö"];
  99.         string = [string stringByReplacingOccurrencesOfString:@"&oslash;" withString:@"ø"];
  100.         string = [string stringByReplacingOccurrencesOfString:@"&ugrave;" withString:@"ù"];
  101.         string = [string stringByReplacingOccurrencesOfString:@"&uacute;" withString:@"ú"];
  102.         string = [string stringByReplacingOccurrencesOfString:@"&ucirc;" withString:@"û"];
  103.         string = [string stringByReplacingOccurrencesOfString:@"&uuml;" withString:@"ü"];
  104.         string = [string stringByReplacingOccurrencesOfString:@"&yacute;" withString:@"ý"];
  105.         string = [string stringByReplacingOccurrencesOfString:@"&thorn;" withString:@"þ"];
  106.         string = [string stringByReplacingOccurrencesOfString:@"&yuml;" withString:@"ÿ"];
  107.        
  108.         return string;
  109. }