notepad替換字符後面的內容(正則表達式批量替換)
2023-04-18 22:53:45 1
notepadnotepad 是一款自由軟體的文本編輯器,輕量且功能強大,相關的介紹可以參見維基百科。我覺得最值得一提的是notepad 佔用內存非常小,工作中我一般都是一直開著用來處理各種文本任務,如批量替換、查詢等,下圖是visual studio code和notepad 佔用內存的對比,notepad 僅佔用12M的內存。你可以直接點擊連結notepad 進行下載。
正則表達式正則表達式(英語:Regular Expression,在代碼中常簡寫為regex、regexp或RE),又稱正規表示式、正規表示法、正規表達式、規則表達式、常規表示法,是計算機科學的一個概念。正則表達式使用單個字符串來描述、匹配一系列匹配某個句法規則的字符串。在很多文本編輯器裡,正則表達式通常被用來檢索、替換那些匹配某個模式的文本。
上面一段內容來自維基百科的介紹,總之正則表達式非常強大,哪怕只學習一些簡單的正則表達式,有可能會讓你的日常工作效率提升很多倍,這裡我列出了一些常用的正則表達式,如果要深入學習我推薦Udacity的cs262程式語言這門mooc課程,課程中的前幾節對正則表達式做了詳細的講解和大量的練習,學了這部分內容會對正則表達式有較深入的理解。
notepad 正則表達式查詢示例以如下文本內容為例,讓我們以正則表達式的方法匹配每一行中的郵箱地址,即下面截圖中的高亮部分內容
[email protected] 892372813892dads cat god dashsasdsdasdas sda qing da da [email protected] dds 777&&&**8 _dssaaszhxiikqww_ [email protected] 9998899 dasds 737337&&&&9jk [email protected] @@@@ asdaskjsaklk sadasdaskkk{{{{}}}}[email protected] 9skdbqhe2y1jlansBuijkmmIOIOkk
notepad 新建文本並拷貝如上文本內容,Ctrl F打開查找窗口,查找模式勾選正則表達式,查找目標中輸入文本\S @[a-z0-9] \.[a-z] ,然後點擊在當前文件中查找,在下方橘色高亮內容即為匹配的內容。
正則表達式查詢.gif
對應的匹配解析如下,可以對照上面列出的常用正則表達式字符進行理解,當然這個匹配的正則表達式並不是唯一解,你也可以嘗試使用其他的正則表達式進行匹配查詢。
查詢正則表達式解析.png
notepad 正則表達式批量替換示例仍然以上一節正則表達式查詢示例中的文本內容為例,現在希望把@後的郵箱地址統一替換為outlook.com,而其餘部分保持不變,我們可以利用替換功能,Ctrl H打開(也可以通過菜單項搜索>替換來打開),查找目標輸入(\S @)[a-z0-9] \.[a-z] ,替換為輸入\1outlook.com,然後點擊全部替換,我們可以看到所有的郵箱地址全部都替換為了outlook.com,而其他部分的內容保持不變。我們發現(\S @)[a-z0-9] \.[a-z] 只是比之前多了一對,它的意思匹配(pattern)中的pattern(也就是\S @)並獲取這一匹配的子字符串,在替換時\1就表示匹配的這部分字符串。
,