我正在尝试匹配所有内容,但[和]之间的所有内容都应匹配。

[和]之间的所有内容都是

\[.+\]

一切,但[和]之间的一切是
[^(\[.+\])]+

搜索文字是
valid[REGEX_EMAIL|REGEX_PASSWORD|REGEX_TEST]

它与“有效”和“REGEX_EMAIL | REGEX_PASSWORD | REGEX_TEST”匹配。

应该匹配“有效”,但不匹配“REGEX_EMAIL | REGEX_PASSWORD | REGEX_TEST”。

怎么解决?

我希望我的php验证类像CodeIgniter一样...

最佳答案

根据您使用的数据有效[REGEX_EMAIL | REGEX_PASSWORD | REGEX_TEST]尝试此操作

^[^[]+

它将返回“有效”。

取决于您使用的语言,您可能需要转义[,所以像这样^[^\[]+编写它

此正则表达式假定[REGEX_EMAIL | REGEX_PASSWORD | REGEX_TEST]之前的文本中永远不会有“[”

我使用Eric Gunnerson的RegexWorkbench for .NET进行了测试

10-08 06:05