[英]Perl regex to match only if not followed by both patterns
我正在嘗試編寫模式匹配,以僅在字符串不跟隨以下兩個模式時才匹配。 現在,我有一個已嘗試操縱的模式,但似乎無法使其正確匹配。
當前模式:
/(address|alias|parents|members|notes|host|name)(?!(\t{5}|\S+))/
我試圖匹配的字符串間距不正確,但是如果它是一個較大的單詞的一部分則不匹配。
例如,我希望它匹配,
host \t{4} something
但不是,
hostgroup \t{5} something
在上面的示例中,它將匹配主機組並最終將其分成兩個單獨的單詞“主機”和“組”
比賽:
notes \t{4} something
但不是,
notes_url \t{5} something
使用我的模式,最終變成:
notes \t{5} _url
希望這更有意義。
我根本不清楚您想要什么,但是單詞邊界可能會滿足您的要求。
這對您有用嗎?
/\b(address|alias|parents|members|notes|host|name)\b(?!\t{5})/
更新資料
更好地了解了您的問題之后,這是否可以滿足您的要求?
/\b(address|alias|parents|members|notes|host|name)\b(?!\t{5}(?!\t))/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.