【发布时间】:2016-08-08 08:36:51
【问题描述】:
我正在尝试构建一个表达式,它将匹配所有文本 EXCLUDING 带有前缀 'abc' AND 后缀 'def' 的文本(文本只有前缀 OR 后缀没问题)。
我尝试了以下方法:
^(?!([a][b][c]])).*(?!([d][e][f])$),但它不匹配只有一个条件的文本(即 abc.xxx 失败,以及 xxx.pdf,尽管它们应该通过)
我知道答案与“向后看”有关,但我仍然不太确定如何实现此行为
我还尝试了以下方法:
^(?<!([a][b][c])).*(?!([d][e][f])$),但同样没有运气
【问题讨论】:
-
你用的是哪种方言?
-
^(?!abc.*def$).* -
@SebastianProske 谢谢...原来我把事情复杂化了!
-
@SebastianProske 这个表达式似乎不起作用:regexr.com/3dvco
-
@strah 我没有看到问题,它匹配因为后缀不存在。
标签: regex regex-negation regex-lookarounds