我正在使用Notepad ++ 並嘗試在本地處理一個日誌文件,並嘗試使用正則表達式函數從文件中提取任何數據,其中包含: -1或? 我不是偉大的使用reg表達式,但想出這樣的事情會做的伎倆,但無濟於事:正則表達式來查找和提取符合過濾標準的行
^.*\b(-1|?)\b.*$
我正在使用Notepad ++ 並嘗試在本地處理一個日誌文件,並嘗試使用正則表達式函數從文件中提取任何數據,其中包含: -1或? 我不是偉大的使用reg表達式,但想出這樣的事情會做的伎倆,但無濟於事:正則表達式來查找和提取符合過濾標準的行
^.*\b(-1|?)\b.*$
正如你可以在這裏閱讀:
How do you use Notepad++ regex pipe | for strings longer than one character?
記事本++不支撐管'|'字符在它的正則表達式中的版本低於6.1.1。更新你的記事本++版本,並使用正則表達式:
^.*(\-1|[\?]).*$
試試這個正則表達式:
(.*-1.*|.*\?.*)
首先,如果你想找到?
,你應該逃避它\?
其次,我不知道關於記事本++,但通常-
不被視爲一個單詞符號,因此第一個\b
將不會作爲「開始的單詞」,應該被刪除,?
也不是起始和結束的單詞,因此它既\b
沒用。
你需要逃避?使用a的字符。我會爲你分解它,所以它可以幫助你學習正則表達式。
^(.*(?:-1|\?).*)$
(?:-1|\?)
- 符合非捕獲組?或-1(.*(?:-1|\?).*)
- 包裝在捕獲組中,匹配任何東西然後?或-1然後是任何東西使用行邊界這將導致捕獲的行包含-1或?
您使用的是哪種版本的Notepad ++。它的版本低於10.1.1,看到我的回答如下 –
最新我在他們的網站上看到的是6.1.2 – Will
對不起,我的錯。我的意思是6.1.1。你使用哪個版本? –