-
Notifications
You must be signed in to change notification settings - Fork 3
Escapes
Tomasz Kuryłek edited this page Feb 26, 2014
·
7 revisions
Escapes contains five special methods to espace special characters for:
- regular expression -
public static String escapeRegexp(String value) - html -
public static String escapeHtml(String value) - url -
public static String escapeUrl(String value) - xml -
public static String escapeXml(String value) - json -
public static String escapeJson(String value)
Below are five examples, one for each method:
String value = "Ala has a cat.";
String escapedValue = Escapes.escapeRegexp(value); // Ala has a cat\.
String value = "First line<br />";
String escapedValue = Escapes.escapeHtml(value); // First line<br />
String value = "http://www.jsolve.pl/about us";
String escapedValue = Escapes.escapeUrl(value); // http://www.jsolve.pl/about%20us
String value = "<root><element id='1' /></root>";
String escapedValue = Escapes.escapeXml(value); // <root><element id='1' /></root>
String value = "{"id" : 1, "name" : "jsolve"}";
String escapedValue = Escapes.escapeJson(value); // {\\"id\\" : 1, \\"name\\" : \\"jsolve\\"}You can also define special characters by yourself! It is extremely easy:
Map<Character, String> characters= Maps.newHashMap();
characters.put('\n', "<br />");
String value = "First line\nSecond line\nThird line\n";
String escapedValue = Escapes.escape(value, characters); // First line<br />Second line<br />Third line<br />If you would like to use symbols already defined, you can get it:
Map<Character, String> urlspecials = Escapes.getUrlspecials();
urlspecials.put(',', ".");
Escapes.escape(value, urlspecials);Note that always when retrieving existing characters, method returns a new map.