一千萬個為什麽

搜索

如何否定整個正則表達式?

我有一個正則表達式,例如(ma |(t){1})。它匹配 mat ,與 bla 不匹配。

我想否定正則表達式,因此它必須匹配 bla 而不是 mat通過向此正則表達式添加內容。我知道我可以編寫 bla ,但實際的正則表達式更復雜。

最佳答案

Use negative lookaround: (?!pattern)

可以使用正面外觀來斷言模式匹配。否定的外觀恰恰相反:它用於斷言模式不匹配。一些風味支持斷言;一些人對外觀等有所限制。

指向regular-expressions.info的鏈接

也可以看看

更多例子

這些嘗試是為玩具問題提出正則表達式解決方案作為練習;如果你想學習各種方法可以使用它們(嵌套它們,使用它們捕獲等),它們應該具有教育意義:

轉載註明原文: 如何否定整個正則表達式?