含关键词1且含关键词2
^(.(?=.*关键词1)(?=.*关键词2))+.*$
例如:
含关键词1或含关键词2
关键词1|关键词2
例如:
排除关键词
^(.(?!关键词))*$
例如:
该正则表达式也可以拓展为^(.(?!关键词1)(?!关键词2))*$
,以此类推,可以排除更多的关键词。
例如:
含关键词1,且关键词1的右侧不含关键词2
^.*(.(?=关键词1)(?!.*关键词2))+.*$
例如:
含关键词1,且关键词1的左侧不含关键词2
^(.(?!关键词2))*.(?=关键词1).*$
例如:
含关键词1,且关键词1的左侧不含关键词2,右侧不含关键词3
^(.(?!关键词2))*.(?=关键词1)(.(?!关键词3))*$
例如:
如果关键词2和关键词3为同一个关键词,那么就相当于“含关键词1且不含关键词2”,即^(.(?!关键词2))*.(?=关键词1)(.(?!关键词2))*$
。
例如:
相关工具
正则表达式 - 在线工具
正则表达式 - 可视化工具
RegExr – 正则表达式在线测试工具
Regulex – 正则表达式在线测试工具