[英]RegEx for matching digits not followed by specific pattern
我試圖建立一個正則表達式來匹配以下樣式的線條:
123 warehouse
124 token warehouse.
153token token abc123; etc. - warehouse
223abdc token abc green warehouse
但是這些行不是:
53red warehouse.
323 green token token etc warehouse.
我構建的正則表達式使用負前瞻,但在https://regex101.com/上進行測試會匹配所有行:
\d+(?!( ?red| ?green)).*(\bwarehouse\b)
有什么錯誤,應如何糾正? 如果很重要,則正則表達式應在Java下編譯(轉義必要的字符后)。
擁有123red warehouse.
您的正則表達式匹配1個或多個數字12
然后不匹配紅色或綠色3red
然后匹配warehouse
a space
的任何字符。
在前幾個數字后添加負前瞻:
\d+(?!\d)(?! ?(?:red|green)).*(\bwarehouse\b)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.