例如,我想不包括“拟合”、“空心”、“万亿”
但不是“你好”或“模式”
我已经有以下工作要做了
(.)(.)\2\1与“空心”或“合适”相配,但我很难否定。
我得到的最接近的东西是
^.(?!(.)(.)\2\1)这不包括“拟合”和“空心”,但不包括“万亿”
发布于 2014-04-05 15:05:14
这和你现在的情况有点不同。当前的正则表达式将检查苍白性(?)从第二个角色开始。由于您希望检查整个字符串,因此需要将其更改为:
^(?!.*(.)(.)\2\1)第一个锚点将确保只在开始时进行检查(否则,regex可以在字符串末尾声明匹配)。
然后,负查找范围内的.*将允许在字符串中的任何位置执行检查。如果有匹配,就把整场比赛都输掉。
发布于 2014-04-05 14:43:46
它与万亿不匹配,因为您添加了^.,意味着它必须在匹配开始之前就有一个字符。对于前两种情况,它具有h和f字符。因此,如果您将其转换为^..(?!(.)(.)\2\1),那么它将适用于trillion。
一般情况下,准则是:
(?!.*(.)(.)\2\1)
^^ any number of characters(other than \n)https://stackoverflow.com/questions/22882253
复制相似问题