我有以下句子:
从我的列表中删除所有
从我的列表中删除
删除列表
从我的列表中删除所有
Akash从我的列表中删除所有
这是我的正则表达式:
(?i)^.*(!delete all|!remove all|remove|delete)(.*?)(from my list|from the list|from list|list|reminders|shopping list|reminders list)(.*)$
我不希望这个匹配'全部删除'或'全部删除',但上面的内容不匹配,即使我提到!delete all|!remove all
混淆了!
答案 0 :(得分:1)
您正在寻找negative lookahead assertion:
(?i)(?:delete|remove)(?!\s+all)
如果我们在(?!\s+all)
或all
之后有delete
空格,那么 remove
是一个否定前瞻断言,但是匹配失败。