regex – 不包含某个字符串的正则表达式

前端之家收集整理的这篇文章主要介绍了regex – 不包含某个字符串的正则表达式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这样的东西

aabbabcaabda

用于选择最小组包裹由我有这个/ a([^ a] *)a /它工作正常

但我有问题的团体包裹由aa,我需要的东西
/ aa([^ aa] *)aa /它不工作,我不能使用像/ aa([^ a] *)aa /的第一个,因为它会在a的第一次出现时结束我不想。

一般来说,有什么办法,怎么说不包含字符串的方式一样
我可以说不包含字符与[^ a]?

简单地说,我需要aa,除了序列aa,然后任何字符,然后以aa结束

一般来说,写一个不包含特定字符串的正则表达式是很痛苦的。我们必须为计算模型这样做 – 你拿一个NFA,这是很容易定义,然后减少到正则表达式。不包含“cat”的东西的表达式大约有80个字符。

编辑:我刚刚完成,是的,它是:

aa([^a] | a[^a])aa

Here是一个非常简短的教程。我以前找到了一些伟大的,但我不能再看到他们了。

原文链接:https://www.f2er.com/regex/358149.html

猜你在找的正则表达式相关文章