正则表达式Lookbehind和Lookahead数值测试

时间:2011-07-25 03:47:14

标签: regex

我正在尝试配置一个匹配任何数值但是1211的正则表达式,因此它仍然会匹配变量,如1212 121 1122,3411等

我无法在http://regexpal.com/测试以下内容,因为它似乎不支持?

(1(?!2)|1(?!2)|(?<!1)2|(?<!2)1|[^1211])+|[0-9]{1,4})

我做得对吗?我还可以在哪里测试?

修改

请注意,我需要在重写模块/过滤器中实现。

2 个答案:

答案 0 :(得分:4)

您可以大量简化该正则表达式:

^(?!1211)[1-9]\d{0,3}$

对于regexpal,由于你的正则表达式无效,它无效。你可以马上告诉它,因为它是一个比开放更多的右括号。

答案 1 :(得分:0)

我建议你走一条简单的路线:

if (data != "1211"){
  // your other regex here
}

如果您熟悉它,可以使用javascript进行测试。