// note the open quote at the end
test("com.foo.Panda \"Furious 5\"\fand\t'Shi Fu' \"escape\tprison", "com.foo.Panda", "Furious 5", "and", "Shi Fu", "escape\tprison");
test("\"mix 'single quote' in double\" 'mix \"double quote\" in single' partial\"quote me\"this", "mix 'single quote' in double", "mix \"double quote\" in single", "partialquote methis");
test("line one #comment\n'line #2' #rest are comment\r\n#comment on line 3\nline 4 #comment to eof", "line", "one", "line #2", "line", "4");
test("This is an \"open quote \n across line\n\t, note for WS.", "This", "is", "an", "open quote ", "across", "line", ",", "note", "for", "WS.");
test("Try \"this \\\\\\\\ escape\\n double quote \\\" in open quote", "Try", "this \\\\ escape\n double quote \" in open quote");
test("'-Dmy.quote.single'='Property in single quote. Here a double quote\" Add some slashes \\\\/'", "-Dmy.quote.single=Property in single quote. Here a double quote\" Add some slashes \\/");
test("\"Open quote to \n new \"line \\\n\r third\\\n\r\\\tand\ffourth\"", "Open quote to ", "new", "line third\tand\ffourth");
void test(String full, String... expect) throws IOException {
System.out.println("test: >>>" + full + "<<<");
List<String> found = expand(full); if (found.equals(Arrays.asList(expect))) {
System.out.println("OK");
} else { for (int i = 0; i < Math.max(found.size(), expect.length); i++) { if (i < found.size()) {
System.out.println("found[" + i + "]: >>>" + found.get(i) + "<<<");
} if (i < expect.length) {
System.out.println("expect[" + i + "]: >>>" + expect[i] + "<<<");
}
}
}
System.out.println();
}
List<String> expand(String full) throws IOException {
Tokenizer t = new Tokenizer(new StringReader(full));
List<String> result = new ArrayList<>();
String s; while ((s = t.nextToken()) != null) { // System.err.println("token: " + s);
result.add(s);
} return result;
}
}
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.11Bemerkung:
(vorverarbeitet am 2026-06-10)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.