【发布时间】:2012-12-15 05:29:24
【问题描述】:
我有一个类似于寻找“匹配括号”的挑战,但我想这是一个更简单的挑战。 例如,像“xAAAyBBBz”这样的字符串应该匹配,因为有 3 个 A 和 3 个 B。然而,“xAAyBBBz”不应该匹配,因为有一个“不匹配的”B。字符串有任意长度,它应该是一个单一的正则表达式。我可以使用正则表达式中的评估(毕竟是 Perl),我可以(应该!)完全避免正则表达式。但现在我开始好奇了。
【问题讨论】:
-
如果 x、y 或 z 包含 A 或 B 怎么办?
-
您描述的模式是传统正则表达式无法匹配的,因为该模式不是正则语言(en.wikipedia.org/wiki/Regular_language)。但是,它可能可以通过扩展来匹配。
-
我相信this previously asked question 回答了你的问题。 :)