1
在Splunk中我有很多字段提取用於從URI中提取值。我有幾個匹配特定模式,我現在想要另一個正則表達式匹配任何東西,但這些。正則表達式,匹配除這些字符串之外的任何字符
^/SiteName/[^/]*/(?<a_request_type>((?!Process)|(?!process)|(?!Assets)|(?!assets))[^/]+)
上面的正則表達式是我到目前爲止。我在等待負面預測,以防止匹配流程,流程,資產或資產。然而,看起來,這些lookahead之後的[^ /] +可以繼續前進並匹配這些字符串。在這個正則表達式有時會覆蓋我寫的接受這些字符串的其他正則表達式
對於使正則表達式匹配任何字符串的正確語法,除了在負向lookaheads中指定的字符串?
謝謝!
這是賓果! 謝謝你 – dahui
我知道,發佈後3分鐘內我無法標記它。 5秒鐘;) – dahui
我認爲你可以進一步減少到'(?![Pp] rocess | [Aa] ssets)'。 @dahui'\ b(?:(?!foo)|(?!bar))\ w +'[仍然可以是foo或bar](https://regex101.com/r/xW7zC2/1)。但是'\ b(?!foo | bar)\ w +'[不能是](https://regex101.com/r/kO9wG6/1)。這是一個邏輯錯誤。 –