我知道以下正則表達式將匹配“紅色”,“綠色”或“藍色”。red|green|blue是否有一種簡單的方法可以使它匹配除幾個指定字符串以外的所有內容?
3 回答

RISEBY
TA貢獻1856條經驗 獲得超5個贊
如果要確保該字符串既不是紅色,綠色也不是藍色,那么caskey的答案就是這樣。但是,通常需要確保該行的任何位置都不包含紅色,綠色或藍色。為此,將正則表達式與錨定^并包含.*在否定的lookahead中:
^(?!.*(red|green|blue))
另外,假設您想要包含單詞“ engine”但沒有任何這些顏色的行:
^(?!.*(red|green|blue)).*engine
您可能會認為可以.*將正則表達式的開頭作為因素:
^.*(?!red|green|blue)engine # Does not work
但是你不能。您必須同時具有兩個實例.*才能正常工作。
- 3 回答
- 0 關注
- 901 瀏覽
添加回答
舉報
0/150
提交
取消