向專家問好,我正在尋求一個PCRE匹配/替換,以執行以下內容。
a-b-Divider-Any-Text ----> a-b-Divider__Any__Text
。
a-b-c-Divider-w-x-y-z ---> a-b-c-Divider__w__x__y__z
a-b-c-d-e-f-g-h-i-j ------> a-b-c-d-e-f-g-h-i-j (沒有替換,因為沒有Divider)
因此,基本上,我只是想在全域范圍內替換 Divider之后的所有連字符。
如果要替換 Divider之前的連字符,我只是使用類似-(?=.*Divider.*)/g
但是,將其改為負數前導,也可以匹配沒有分隔符的文本。
我能否以某種方式既驗證 "Divider",又全域匹配所有剩余的連字符?
CodePudding
你可以使用
(?:G(?!A)|Divider) [^-]*K-
請看regex演示。詳情:
(?:G(?!A)|Divider)- 前面的匹配結束或者Divider[^-]*- 除了-之外的零個或多個字符。K- 匹配重置運算子,丟棄迄今為止匹配的文本 。
-- 一個連字符。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/307560.html
標籤:
