使用Notepad ++我需要找到包含2个关键字(两者)的行。
我找到了how to combine 2 regex with a logical 'or' operator.
示例: (searchword1)|(searchword2)
但我如何与逻辑'和'结合?
尝试&,&&&没有成功。
输入示例:
The CAT goes up and down the ROAD.
The CAT goes up and down the CITY.
搜索字词: CAT & ROAD
预期结果:第1行
答案 0 :(得分:5)
如果您正在寻找一个真正的&&
操作,其中一行包含任何顺序的单词,那么您将需要匹配以下两行:
CAT在ROAD上下移动。
ROAD在CAT上下移动。 (可怜的猫)
在这种情况下,您需要使用:
^(?=.*\bCAT\b)(?=.*\bROAD\b).*$
说明:
^
起跑线$
结束行?=
积极向前看\b
字边界。不确定你是否想要这个。如果您想匹配单词的任何部分,请删除这些内容,例如TheCATgoes up and down theROAD
。 (?=)
是一个积极的展望。我们有两个这样的预测,一个用于任何事物(*
),然后是CAT,一个用于任何事物(*
),然后是ROAD。两个先行之间存在隐含的&&
- 必须满足这两个条件。
阅读结论 here
答案 1 :(得分:4)
查找 - >正则表达式,然后键入
(CAT)(.*?)(ROAD)
答案 2 :(得分:0)
如果只需要两个单词,则使用或运算符以任意顺序搜索单词时使用简单模式:
(CAT.*ROAD)|(ROAD.*CAT)
对于两个以上的词,积极的前瞻可能更好。
答案 3 :(得分:0)