List of usage examples for org.apache.commons.lang3 StringEscapeUtils escapeJava
public static final String escapeJava(final String input)
Escapes the characters in a String using Java String rules.
Deals correctly with quotes and control-chars (tab, backslash, cr, ff, etc.)
So a tab becomes the characters '\\' and 't' .
The only difference between Java strings and JavaScript strings is that in JavaScript, a single quote and forward-slash (/) are escaped.
Example:
input string: He didn't say, "Stop!"Usage
From source file:org.grouplens.lenskit.util.io.StringDescriptionWriter.java
@Override public DescriptionWriter putField(String name, String value) { builder.append(getIndent()).append(name).append(": ").append(StringEscapeUtils.escapeJava(value)) .append('\n'); return this; }From source file:org.lockss.pdf.PdfUtil.java
/** * <p>//from w ww . ja va 2 s.c o m * Convenience method to output a human-readable version of the * given token to the given string builder. * </p> * @param sb A string builder. * @param pdfToken A PDF token. * @since 1.57 */ public static void prettyPrint(StringBuilder sb, PdfToken pdfToken) { sb.append("["); if (pdfToken.isArray()) { sb.append("array:"); for (PdfToken arrayToken : pdfToken.getArray()) { prettyPrint(arrayToken); } } else if (pdfToken.isBoolean()) { sb.append("boolean:"); sb.append(Boolean.toString(pdfToken.getBoolean())); } else if (pdfToken.isDictionary()) { boolean first = true; sb.append("dictionary:"); for (Map.Entry<String, PdfToken> entry : pdfToken.getDictionary().entrySet()) { if (first) { first = false; } else { sb.append(";"); } sb.append(StringEscapeUtils.escapeJava(entry.getKey())); sb.append("="); prettyPrint(entry.getValue()); } } else if (pdfToken.isFloat()) { sb.append("float:"); sb.append(Float.toString(pdfToken.getFloat())); } else if (pdfToken.isInteger()) { sb.append("integer:"); sb.append(Long.toString(pdfToken.getInteger())); } else if (pdfToken.isName()) { sb.append("name:"); sb.append(StringEscapeUtils.escapeJava(pdfToken.getName())); } else if (pdfToken.isNull()) { sb.append("null"); } else if (pdfToken.isObject()) { sb.append("object:"); prettyPrint(sb, pdfToken.getObject()); } else if (pdfToken.isOperator()) { sb.append("operator:"); sb.append(StringEscapeUtils.escapeJava(pdfToken.getOperator())); } else if (pdfToken.isString()) { sb.append("string:\""); sb.append(StringEscapeUtils.escapeJava(pdfToken.getString())); sb.append("\""); } sb.append("]"); }From source file:org.lockss.servlet.TestDaemonStatus.java
public void testConvertDisplayString() throws Exception { // test null// ww w . ja v a 2s . com Object testObj = null; assertEquals("", format(testObj, ColumnDescriptor.TYPE_STRING)); // test standard numbers testObj = new Integer(123); assertEquals("123", format(testObj, ColumnDescriptor.TYPE_INT)); testObj = new Float(123321); assertEquals(testObj.toString(), format(testObj, ColumnDescriptor.TYPE_FLOAT)); // check proper 'big int' formatting testObj = new Long(12345678); assertEquals("12,345,678", format(testObj, ColumnDescriptor.TYPE_INT)); // test string testObj = "test string"; assertEquals("test string", format(testObj, ColumnDescriptor.TYPE_STRING)); // Issue 1901: verify that there is no encoding bias testObj = "<>&'\"\n"; String res = format(testObj, ColumnDescriptor.TYPE_STRING); assertEquals("Expected \"" + StringEscapeUtils.escapeJava(testObj.toString()) + "\" but got \"" + StringEscapeUtils.escapeJava(res) + "\"; encoding bias?", "<>&'\"\n", res); // test percentage testObj = new Double(.453); assertEquals("45%", format(testObj, ColumnDescriptor.TYPE_PERCENT)); // test agreement testObj = new Double(.453); assertEquals("45.30%", format(testObj, ColumnDescriptor.TYPE_AGREEMENT)); testObj = new Double(.999999); assertEquals("99.99%", format(testObj, ColumnDescriptor.TYPE_AGREEMENT)); // test date Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, 2004); cal.set(Calendar.MONTH, Calendar.JANUARY); cal.set(Calendar.DATE, 1); cal.set(Calendar.HOUR_OF_DAY, 15); cal.set(Calendar.MINUTE, 15); testObj = cal.getTime(); assertEquals(new DisplayConverter().getTableDateFormat().format(testObj), format(testObj, ColumnDescriptor.TYPE_DATE)); // test IPAddr testObj = IPAddr.getLocalHost(); assertEquals(IPAddr.getLocalHost().getHostAddress(), format(testObj, ColumnDescriptor.TYPE_IP_ADDRESS)); // test time interval long timeInt = Constants.HOUR + Constants.MINUTE; testObj = new Long(timeInt); assertEquals(StringUtil.timeIntervalToString(timeInt), format(testObj, ColumnDescriptor.TYPE_TIME_INTERVAL)); // test unknown testObj = "unknown string"; assertEquals("unknown string", format(testObj, -1)); }From source file:org.lucidj.gluon.GluonUtil.java
private static void dump_instance(GluonInstance instance, Writer writer, int level) throws IOException { String indent = new String(new char[level * 8]).replace('\0', ' '); String[] keyset = instance.getPropertyKeys(); String class_name = instance._getValueObject() == null ? "" : " (" + instance._getValueObject().getClass().getName() + ") " + (instance.isPrimitive() ? "PRIMITIVE" : "OBJECT"); writer.write(indent + "Backing Object: " + ((instance._getValueObject() == null) ? "<null>" : instance._getValueObject()) + class_name + "\n"); writer.write(indent + "Representation: " + ((instance.getValue() == null) ? "<null>" : StringEscapeUtils.escapeJava(instance.getValue())) + "\n"); // First write all X- properties if (keyset == null) { //writer.write (indent + "No Properties\n"); } else {//from w w w . j a v a 2s .c om for (String key : keyset) { GluonInstance entry = instance.getPropertyEntry(key); writer.write( indent + "Property: " + key + "=" + StringEscapeUtils.escapeJava(entry.getValue()) + "\n"); dump_instance(entry, writer, level + 1); } } if (instance.getObjectEntries() == null) { //writer.write (indent + "No Objects\n"); } else { for (GluonInstance obj : instance.getObjectEntries()) { writer.write(indent + "Object:\n"); dump_instance(obj, writer, level + 1); } } }From source file:org.metaborg.intellij.idea.parsing.SpoofaxHighlightingLexer.java
/** * Return a string representation of a token, for debugging and logging. * * @param tokenRange//from w w w.j a v a 2s . c o m * The token range. * @return The string representation. */ private String printToken(final IntRange tokenRange) { return logger.format("\"{}\" @ {}", StringEscapeUtils.escapeJava(buffer.subSequence(tokenRange.start, tokenRange.end).toString()), tokenRange); }From source file:org.moe.natjgen.EditContext.java
protected Expression newStringLiteral(String name) { StringLiteral literal = getAST().newStringLiteral(); getRewrite().set(literal, StringLiteral.ESCAPED_VALUE_PROPERTY, "\"" + StringEscapeUtils.escapeJava(name) + "\"", getEditGroup()); return literal; }From source file:org.neo4j.codegen.source.MethodWriter.java
@Override public void constant(Object value) { if (value == null) { append("null"); } else if (value instanceof String) { append("\"").append(StringEscapeUtils.escapeJava((String) value)).append('"'); } else if (value instanceof Integer) { append(value.toString());//w ww . j a v a 2 s . c o m } else if (value instanceof Long) { append(value.toString()).append('L'); } else if (value instanceof Double) { append(value.toString()); } else if (value instanceof Boolean) { append(value.toString()); } else { throw new UnsupportedOperationException(value.getClass() + " constants"); } }From source file:org.omnaest.utils.propertyfile.content.parser.PropertyFileContentWriter.java
private static String escapeJavaStyleIfNecessary(boolean useJavaStyleUnicodeEscaping, final String value) { return useJavaStyleUnicodeEscaping ? StringEscapeUtils.escapeJava(value) : value; }From source file:org.onos.yangtools.sal.binding.yang.types.TypeProviderImpl.java
/** * Converts the pattern constraints from <code>typedef</code> to the list of * the strings which represents these constraints. * * @param typedef/* ww w . j av a2s. com*/ * extended type in which are the pattern constraints sought * @return list of strings which represents the constraint patterns * @throws IllegalArgumentException * if <code>typedef</code> equals null * */ private List<String> resolveRegExpressionsFromTypedef(final ExtendedType typedef) { final List<String> regExps = new ArrayList<String>(); Preconditions.checkArgument(typedef != null, "typedef can't be null"); final TypeDefinition<?> strTypeDef = baseTypeDefForExtendedType(typedef); if (strTypeDef instanceof StringType) { final List<PatternConstraint> patternConstraints = typedef.getPatternConstraints(); if (!patternConstraints.isEmpty()) { String regEx; String modifiedRegEx; for (PatternConstraint patternConstraint : patternConstraints) { regEx = patternConstraint.getRegularExpression(); modifiedRegEx = StringEscapeUtils.escapeJava(regEx); regExps.add(modifiedRegEx); } } } return regExps; }From source file:org.opendaylight.mdsal.binding.javav2.generator.yang.types.TypeGenHelper.java
/** * Converts the pattern constraints from <code>typedef</code> to the list of * the strings which represents these constraints. * * @param typedef/*from ww w.j a v a 2s .co m*/ * extended type in which are the pattern constraints sought * @return list of strings which represents the constraint patterns * @throws IllegalArgumentException * if <code>typedef</code> equals null * */ static List<String> resolveRegExpressionsFromTypedef(final TypeDefinition<?> typedef) { Preconditions.checkArgument(typedef != null, "typedef can't be null"); final List<PatternConstraint> patternConstraints; if (typedef instanceof StringTypeDefinition) { patternConstraints = ((StringTypeDefinition) typedef).getPatternConstraints(); } else { patternConstraints = ImmutableList.of(); } final List<String> regExps = new ArrayList<>(patternConstraints.size()); for (PatternConstraint patternConstraint : patternConstraints) { final String regEx = patternConstraint.getRegularExpression(); final String modifiedRegEx = StringEscapeUtils.escapeJava(regEx); regExps.add(modifiedRegEx); } return regExps; }