/**
* Returns a string that is equivalent to the input string, but with
* special characters converted to HTML escape sequences.
*
* @param input the string to escape (<code>null</code> not permitted).
*
* @return A string with characters escaped.
*
* @since 1.0.9
*/
public static String htmlEscape(String input) {
if (input == null) {
throw new IllegalArgumentException("Null 'input' argument.");
}
StringBuffer result = new StringBuffer();
int length = input.length();
for (int i = 0; i < length; i++) {
char c = input.charAt(i);
if (c == '&') {
result.append("&");
}
else if (c == '/"') {
result.append(""");
}
else if (c == '<') {
result.append("<");
}
else if (c == '>') {
result.append(">");
}
else if (c == '/'') {
result.append("'");
}
else if (c == '//') {
result.append("\");
}
else {
result.append(c);
}
}
return result.toString();
}
/**
* Returns a string that is equivalent to the input string, but with
* special characters converted to JavaScript escape sequences.
*
* @param input the string to escape (<code>null</code> not permitted).
*
* @return A string with characters escaped.
*
* @since 1.0.13
*/
public static String javascriptEscape(String input) {
if (input == null) {
throw new IllegalArgumentException("Null 'input' argument.");
}
StringBuffer result = new StringBuffer();
int length = input.length();
for (int i = 0; i < length; i++) {
char c = input.charAt(i);
if (c == '/"') {
result.append("///"");
}
else if (c == '/'') {
result.append("//'");
}
else if (c == '//') {
result.append("");
}
else {
result.append(c);
}
}
return result.toString();
}
}