From ad269c65731ac1b71c74746f47398379464324b2 Mon Sep 17 00:00:00 2001 From: Peter Wu Date: Fri, 29 Apr 2016 16:12:08 +0200 Subject: Check for String --- src/regex/RegexTest.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src') 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."); } } -- cgit v1.2.1