正则周二挑战赛 - 第十七周

在2013年假期结束后的第一个挑战,你必须匹配有效的正则表达式。 这个挑战分为几个部分 - 首先,你只需要匹配字符,字符类,和其他一些次要的特性,并在未来几周将添加更多的功能,直到我们可以准确地匹配几乎每一个正则表达式。

看看必须支持的正则表达式功能,看测试用例可能更直观。 必须匹配的特征是元字符、字符类和下面的操作符:.?+* 全局和区分大小写模式操作符也应匹配。

在你输入正则之后,每个测试用例都会标注为是否通过,红色是未通过,绿色是通过,因为是基于 web 的,所以只能使用基于 JavaScript 传统型 NFA (Traditional NFA)正则引擎。它类似于PCRE,但有一些不同之处。

测试用例 (0/43)

/regex/
匹配
/regexp?/
匹配
/regexp?/g
匹配
/regexp?/gi
匹配
/ab?c+/i
匹配
/ab*c+/g
匹配
/a[bc]+/
匹配
/a?[bc]?/i
匹配
/[bc]*/
匹配
/[]/
匹配
/[]+/
匹配
/[]?/g
匹配
/r?e?x*/
匹配
/[**]/
匹配
/[**]*/
匹配
/[Rr]eg[Ee]xp?/
匹配
/[ab][cd]+/
匹配
/regex+?/
匹配
/regex*?/
匹配
/a\/a/
匹配
/\*/g
匹配
/\?/i
匹配
/\+/i
匹配
/\??/
匹配
/\?+/g
匹配
/[?]+/
匹配
/regex??/
匹配
regex
不匹配
regex?
不匹配
//
不匹配
/*/
不匹配
/+/
不匹配
/?/
不匹配
/regex?+/
不匹配
/regex*+/
不匹配
/regex/n
不匹配
/regex/*
不匹配
/a/a/
不匹配
/\/
不匹配
/\\\/
不匹配
/[Rr]egE**xp?/
不匹配
/[Rr]egExp?+/
不匹配
/[Rr]++egExp?/
不匹配
恭喜,你的正则通过了所有测试用例,记住要分享这个挑战哦。