1 34 package net.myvietnam.mvncore.filter; 35 36 public final class EnableHtmlTagFilter { 37 38 private EnableHtmlTagFilter() { } 40 41 public static String filter(String input) { 42 if (input == null) { 43 return null; 44 } 45 46 char[] s = input.toCharArray(); 47 int length = s.length; 48 StringBuffer ret = new StringBuffer (length); 49 50 for (int i = 0; i < length; i++) { 51 if (s[i] == '&') { 52 if ( ((i + 3) < length) && 53 (s[i + 1] == 'l') && 54 (s[i + 2] == 't') && 55 (s[i + 3] == ';')) { ret.append('<'); 57 i += 3; 58 } else if ( ((i + 3) < length) && 59 (s[i+1] == 'g') && 60 (s[i+2] == 't') && 61 (s[i+3] == ';') ) { ret.append('>'); 63 i += 3; 64 } else if ( ((i + 4) < length) && 65 (s[i+1] == 'a') && 66 (s[i+2] == 'm') && 67 (s[i+3] == 'p') && 68 (s[i+4] == ';') ) { ret.append('&'); 70 i += 4; 71 } else if ( ((i + 5) < length) && 72 (s[i+1] == 'q') && 73 (s[i+2] == 'u') && 74 (s[i+3] == 'o') && 75 (s[i+4] == 't') && 76 (s[i+5] == ';') ) { ret.append('"'); 78 i += 5; 79 } else { 80 ret.append('&'); 81 } 82 } else { 83 ret.append(s[i]); 84 } 85 } return ret.toString(); 87 } 88 89 107 } 108 | Popular Tags |