[英]RegEx Notepad++
我有以下格式的一系列行:
LINE: 5190 STNO: 22669 SI: VOICE
CCT LINE STNO SI BUS TYPE
003 6269 OPTI ONLY
MULTLINE 8. . . . . . . . . . . . . . .
001 SUBUNIT . . . . . DIGITE MAIN DEFIL/TRS
(ALT_ROUT: N) (OPTIIP )
LINE: 5291 STNO: 29956 SI: VOICE
我需要通過正則表達式(notepad ++)查找的是“ STNO:”后面的數字。
大約有100種這樣的比賽。
我對STNO:\\ s + \\ d {4,5}感到厭倦,但這也使STNO進入了我不想要的比賽。 請幫忙。
我只需要保留匹配的結果,其余的我要刪除匹配的項目或將匹配的項目復制到新文件中,以較容易的為准。
我建議采用兩步法。 首先獲取所有帶有STNO的行和一個數字。 第二,刪除除數字以外的所有內容。
在查找對話框中選擇標記選項卡。 確保選中書簽行 。 在“ 查找內容”框中,輸入STNO:\\s*\\d+
,然后單擊“ 全部標記” 。
訪問菜單=>搜索=>書簽=>復制書簽行。 然后粘貼到另一個緩沖區。 另外,要在同一個文件中使用菜單=>搜索=>書簽=>刪除未標記的行。 現在,您應該將所有需要的行放在緩沖區中。
進行正則表達式搜索並替換設置, 找到 ^.*STNO:\\s*(\\d+).*$
然后替換為\\1
。 然后單擊全部替換 。
以上假設每行只能找到一個數字。
========================
因為只需要數字,所以另一種方法是在所需數字周圍放置換行符和一個標記,然后刪除沒有該標記的任何行,最后刪除該標記。
讓標記keep
。 進行搜索和替換設置查找要keep
並將替換為單個空格字符,確保未選擇區分大小寫 ; 然后單擊全部替換 。 接下來,進行正則表達式搜索和替換設置, 找到要為^STNO:\\s*(\\d+)
並將替換為\\r\\nkeep\\1\\r\\n
。 您可能希望區分大小寫 ; 然后單擊全部替換 。 接下來,使用查找要keep
內容進行標記行(如上所述),然后按Menu => Search => Bookmark =>刪除未標記的行。 最后,進行搜索和替換設置, 找到要keep
, 將替換為為空。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.