summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/regex/RegexTest.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/regex/RegexTest.java b/src/regex/RegexTest.java
index 9bbfe00..f149d62 100644
--- a/src/regex/RegexTest.java
+++ b/src/regex/RegexTest.java
@@ -76,9 +76,28 @@ public class RegexTest {
System.out.println();
}
+ static void checkString() {
+ // String ::= (UnescapedChar | "\" EscapedChar)*
+ // UnescapedChar ::= Char - ["] = "\"
+ // (* All Unicode chars but quote and backslash *)
+ // EscapedChar ::= ["] | "\"
+ RegexTest reString = new RegexTest("([^\\\"\\\\]|\\\\[\\\"\\\\])*");
+ reString.assertOk("");
+ reString.assertOk("abc");
+ reString.assertOk("a\\\"b\\\"c");
+ reString.assertOk("\\\"");
+ reString.assertFail("a\"b\"c");
+ reString.assertFail("\"");
+ reString.assertFail("\\");
+ reString.assertFail("\\x");
+ reString.assertFail("\\\\\"");
+ System.out.println();
+ }
+
public static void main(String[] args) {
checkId();
checkNAT();
+ checkString();
System.out.println("Passed.");
}
}