亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何否定正則表達式中的特定詞?

如何否定正則表達式中的特定詞?

慕哥6287543 2019-07-05 09:54:14
如何否定正則表達式中的特定詞?我知道我可以否定一組字符[^bar]但我需要一個正則表達式,其中否定適用于特定的單詞-所以在我的例子中,我如何否定一個實際的"bar"而不是"any chars in bar"?
查看完整描述

3 回答

?
qq_花開花謝_0

TA貢獻1835條經驗 獲得超7個贊

一個很好的方法就是使用負前瞻:

^(?!.*bar).*$

負展望結構是一對括號,開頭括號后面跟著問號和感嘆號。在展望內部[是任何正則表達式]。


查看完整回答
反對 回復 2019-07-05
?
三國紛爭

TA貢獻1804條經驗 獲得超7個贊

除非性能是最重要的,否則只需第二遍運行結果就更容易了,跳過那些與您想要否定的單詞匹配的結果就更容易了。

正則表達式通常意味著您正在執行腳本或某種低性能的任務,因此要找到一個易于閱讀、易于理解和易于維護的解決方案。


查看完整回答
反對 回復 2019-07-05
?
holdtom

TA貢獻1805條經驗 獲得超10個贊

下面的regex將執行您想做的事情(只要支持負的查找后置和查找頭),正確地匹配事物;唯一的問題是它匹配單個字符(即每一個匹配是一個字符,而不是兩個連續的“bar”之間的所有字符),如果您使用非常長的字符串,可能會導致很高的開銷。

b(?!ar)|(?<!b)a|a(?!r)|(?<!ba)r|[^bar]


查看完整回答
反對 回復 2019-07-05
  • 3 回答
  • 0 關注
  • 859 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號