summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Wu <peter@lekensteyn.nl>2016-04-29 16:12:08 +0200
committerPeter Wu <peter@lekensteyn.nl>2016-04-29 16:12:08 +0200
commitad269c65731ac1b71c74746f47398379464324b2 (patch)
treee68f40fdcf4464ba986db0681f44d02380bc0263 /src
parente4c8d6a0a2fe834ac8babc370d03f86eca77e79d (diff)
downloadRegexTest-ad269c65731ac1b71c74746f47398379464324b2.tar.gz
Check for String
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.");
}
}