# Pastebin XEujz2TH private static void removeStringLiterals(StringBuilder sbExpression) { boolean inStringLiteral = false; char quoteChar = 0; boolean isCharEscaped = false; StringBuilder sb = new StringBuilder(); int len = sbExpression.length(); for (int i = 0; i < len; i++) { char ch = sbExpression.charAt(i); if (inStringLiteral) { if (isCharEscaped) { isCharEscaped = false; } else if (ch == '\\') { isCharEscaped = true; } else if (ch == quoteChar) { inStringLiteral = false; } } else { if (ch == '"' || ch == '\'' || ch == '`') { inStringLiteral = true; quoteChar = ch; } else { sb.append(ch); } } } sbExpression.setLength(0); sbExpression.append(sb); }