我正在玩Regex高尔夫(
http://regex.alf.nu/),我在做Abba洞。我有完整匹配错误的正则表达式(这正是我想要做的):
(([\w])([\w])\3\2)
但是,我现在试图否定它,所以它匹配另一方。我似乎无法想像出来。我试过了:
(?!([\w])([\w])\3\2)
但那没有办法。来自正则表达式大师的任何提示?
您可以通过简单的使用来缩短(并获得更多积分)。并删除不必要的括号:
^(?!.*(.)(.)\2\1)
它只是确保没有“abba”(“abba”这意味着我们不想匹配的特定顺序的4个字母)在字符串的任何部分,而不必匹配整个单词。