1
的任務是找到數999 ps.SDR_FLOW_SUBSCRIBER_1DAY_999
如何使用+或*在記事本++正則表達式正回顧後(?<= EXP)
我可以使用(?<=1DAY_)[0-9]{3}
找到999,但如果我增加更多的條件,Notepad ++將報告錯誤Invalid regular expression
。
那麼,如何在這種情況下使用+
或*
?
的任務是找到數999 ps.SDR_FLOW_SUBSCRIBER_1DAY_999
如何使用+或*在記事本++正則表達式正回顧後(?<= EXP)
我可以使用(?<=1DAY_)[0-9]{3}
找到999,但如果我增加更多的條件,Notepad ++將報告錯誤Invalid regular expression
。
那麼,如何在這種情況下使用+
或*
?
這可能是目前您圖像中包含的,但我不能看到它(企業網絡可能會阻止'* .imgur.com'):什麼是你的目標RE與'*'或包括「+」? – Aaron
因爲它可能是你的問題:Notepad ++使用boost正則表達式引擎,它不允許可變寬度lookbehind(大多數正則表達式引擎沒有) - >在lookbehind中使用量詞總是會失敗 – Aaron
你說的任務是找到號碼。但是,如果是這樣的話,你不需要'(?<= 1DAY_)'。所有你看到如果使用_Find All_是一個數字。它與文檔中的任何內容有什麼關係?假設你想用'1DAY_'使用'[1A-Z] + _'來限定它,爲什麼你不希望看到限定符突出顯示?這沒有意義。如果您在替換情況下使用它,只需將該部分包裝到捕獲組中,然後將其寫回。 '([1A-Z] + _)[0-9] {3}'。你可以使用'\ K'運算符將它從匹配項[[1A-Z] + _ \ K [0-9] {3}'中排除,但爲什麼只是爲了使用它而使用它? – sln