[英]Regex to match everything until pattern with an exception in it
這是我的正則表達式
\d+%[^\.][^0-9]*?((?!original).)percentage*
我希望它從一個百分比(即 10%)匹配到單詞百分比
除非它包含“原始”一詞:
因此,“無論”在“百分比”一詞之前可以是任何東西,除非他在其中包含“原始”一詞。
我已經能夠得到我的正則表達式,但它只有在“百分比”位於新行的開頭時才能正常工作
在某些情況下,10% 的銷售額以原始百分比開頭 --> 我的正則表達式與此字符串匹配,但我不想這樣做,因為它包含單詞“original”
10% 的銷售額以一定的百分比開始 --> 我的正則表達式匹配這個字符串,沒關系,因為它不包含“原始”這個詞
原來的10%
銷售百分比更高-->我的正則表達式與此字符串不匹配,這沒關系,因為它包含單詞“original”(可能是因為新行以百分比開頭?)
原銷售額的 10%
是那個百分比 - >我的正則表達式與這個字符串匹配,但我不想因為它包含單詞“original”
如果我的解釋有點奇怪,我很抱歉,英語不是我的第一語言。
謝謝!!!
您必須重復這部分((?.original).)
並省略*
after percent percentage*
因為它可以選擇重復e
字符。
然后,如果您不想匹配兩者之間的數字,則可以使用[^\d\r\n]
而不是.
\d+%[^.](?:(?!original\b)[^\d\r\n])*\bpercentage\b
模式匹配:
\d+%
匹配 1+ 個數字和%
[^.]
匹配除點以外的任何字符(注意這是廣泛匹配,您也可以使用空格代替)(?:
非捕獲組
(?!original\b)[^\d\r\n]
當 wat 直接位於右側時,匹配除數字或換行符之外的任何字符不是original
字符)*
關閉組並重復 0+ 次\bpercentage\b
匹配percentage
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.