<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
原始文字如下面兩行
abc aaaaa
123 abc 444
希望每次遇到“abc”,則替換“abc”以及其後到行尾的內容為“abc efg”
即上面的文字最終替換為:
abc efg
123 abc efg
解決:
① 在替換對話方塊,查詢內容裡輸入“abc.*”,替換內容輸入為“abc efg”
② 同時勾選“正規表示式”核取方塊,然後點選“全部替換”按鈕
其中,符號的含義如下:
“.” =匹配任意字元
“*” =匹配0次或更多
注意:其實就是正規表示式替換,這裡只是把一些曾經提出的問題加以整理,單純從正規表示式本身來說,就可以引申出成千上萬種特例。
希望把
asdadas123asdasdas456asdasdasd789asdasd
替換為:
asdadas[123]asdasdas[456]asdasdasd[789]asdasd
在替換對話方塊裡面,勾選“正規表示式”核取方塊;
在查詢內容裡面輸入“([0-9])([0-9])([0-9])”,不含引號
“替換為:”裡面輸入“[123]”,不含引號
####備註####:查詢([0-9]+) 替換:[1] 更簡單通用些
範圍為你所操作的範圍,然後選擇替換即可。
實際上這也是正規表示式的使用特例,“[0-9]”表示匹配0~9之間的任何特例,同樣“[a-z]”就表示匹配a~z之間的任何特例
上面重複使用了“[0-9]”,表示連續出現的三個數位
括號用來選擇原型,進行分組,替換時要用
“1”代表第一個“[0-9]”對應的原型,“2”代表第二個“[0-9]”對應的原型,依此類推
“[”|“]”為單純的字元,表示新增“[”或“]”,如果輸入“其它123其它”,則替換結果為:
asdadas其它123其它asdasdas其它456其它asdasdasd其它789其它asdasd
功能增強:
如果將查詢內容“[0-9][0-9][0-9]”改為“[0-9]*[0-9]”,對應1 或 123 或 12345 或 ...
大家根據需要客製化
相關內容還有很多,可以自己參考正規表示式的語法仔細研究一下
因為這幾個字元在行中也是出現的,所以肯定不能用簡單的替換實現
比如
12345 1265345
2345
需要刪除每行末尾的“345”
這個也算正規表示式的用法,其實仔細看正規表示式應該比較簡單,不過既然有這個問題提出,說明對正規表示式還得有個認識過程,解決方法如下
解決:
在替換對話方塊中,啟用“正規表示式”核取方塊
在查詢內容裡面輸入“345$”
這裡“$”表示從行尾匹配
如果從行首匹配,可以用“^”來實現,不過 EditPlus 有另一個功能可以很簡單的刪除行首的字串
a. 選擇要操作的行
b. 編輯-格式-刪除行註釋
c. 在彈出對話方塊裡面輸入要清除的行首字元,確
幾百個網頁中都有下面一段程式碼:
<script LANGUAGE=JavaScript1.1> <!-- htmlAdWH('93163607', '728', '90'); //--> </SCRIPT>
我想把它們都去掉,可是找了很多search & replace的軟體,都是隻能對“一行”進行操作。
EditPlus 開啟幾百個網頁檔案還是比較順暢的,所以完全可以勝任這個工作。
具體解決方法,在 Editplus 中使用正規表示式,由於“(”、“)”被用做預設表示式(或者可以稱作子表示式)的標誌,所以查詢
“<script LANGUAGE=JavaScript1.1>n<!--nhtmlAdWH('93163607', '728', '90'.);n//-->n</SCRIPT>n”
時會提示查詢不到,所以也就無法進行替換了,這時可以把“(”、“)”使用任意字元標記替代,即半形句號:“.”。替換內容為
<script LANGUAGE=JavaScript1.1>n<!--nhtmlAdWH.'93163607', '728', '90'.;n//-->n</SCRIPT>n
在替換對話方塊啟用“正規表示式”選項,這時就可以完成替換了
補充:
對( ) 這樣的特殊符號,應該用來表示,這也是很標準的regexp語法,可以寫為
<script LANGUAGE=JavaScript1.1>n<!--nhtmlAdWH′93163607′,′728′,′90′′93163607′,′728′,′90′;n//-->n</SCRIPT>n
啟動EditPlus,開啟待處理的文字型別檔案。
①、選擇“查詢”選單的“替換”命令,彈出文字替換對話方塊。選中“正規表示式”核取方塊,表明我們要在查詢、替換中使用正規表示式。然後,選中“替換範圍”中的“當前檔案”,表明對當前檔案操作。
②、單擊“查詢內容”下拉式方塊右側的按鈕,出現下拉式選單。
③、下面的操作新增正規表示式,該表示式代表待查詢的空行。(技巧提示:空行僅包括空格符、製表符、回車符,且必須以這三個符號之一作為一行的開頭,並且以回車符結尾,查詢空行的關鍵是構造代表空行的正規表示式)。
直接在查詢中輸入正規表示式“^[ t]*n”,注意t前有空格符。
(1)選擇“從行首開始匹配”,“查詢內容”下拉式方塊中出現字元“^”,表示待查詢字串必須出文字中一行的行首。
(2)選擇“字元在範圍中”,那麼在“^”後會增加一對括號“[]”,當前插入點在括號中。括號在正規表示式中表示,文字中的字元匹配括號中任意一個字元即符合查詢條件。
(3)按一下空格鍵,新增空格符。空格符是空行的一個組成成分。
(4)選擇“製表符”,新增代表製表符的“t”。
(5)移動遊標,將當前插入點移到“]”之後,然後選擇“匹配 0 次或更多”,該操作會新增星號字元“*”。星號表示,其前面的括號“[]”內的空格符或製表符,在一行中出現0個或多個。
(6)選擇“換行符”,插入“n”,表示回車符。
④、“替換為”下拉式方塊保持空,表示刪除查詢到的內容。單擊“替換”按鈕逐個行刪除空行,或單擊“全部替換”按鈕刪除全部空行(注意:EditPlus有時存在“全部替換”不能一次性完全刪除空行的問題,可能是程式BUG,需要多按幾次按鈕)。
1.驗證使用者名稱和密碼:(^[a-zA-Z]w{5,15}$)正確格式:[A-Z][a-z]_[0-9]組成,並且第一個字必須為字母6~16位元;
2.驗證電話號碼:(^(\d{3,4}-)\d{7,8}$)正確格式:xxx/xxxx-xxxxxxx/xxxxxxxx;
3.驗證手機號碼:^1[3|4|5|7|8][0-9]\d{8}$;
4.驗證身份證號(15位或18位元數位):\d{14}[[0-9],0-9xX];
5.驗證Email地址:(^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$);
6.只能輸入由數位和26個英文字母組成的字串:(^[A-Za-z0-9]+$) ;
7.整數或者小數:^[0-9]+([.][0-9]+){0,1}$
8.只能輸入數位:^[0-9]*$。
9.只能輸入n位的數位:^d{n}$。
10.只能輸入至少n位的數位:^d{n,}$。
11.只能輸入m~n位的數位:^d{m,n}$。
12.只能輸入零和非零開頭的數位:^(0|[1-9][0-9]*)$。
13.只能輸入有兩位小數的正實數:^[0-9]+(.[0-9]{2})?$。
14.只能輸入有1~3位小數的正實數:^[0-9]+(.[0-9]{1,3})?$。
15.只能輸入非零的正整數:^+?[1-9][0-9]*$。
16.只能輸入非零的負整數:^-[1-9][0-9]*$。
17.只能輸入長度為3的字元:^.{3}$。
18.只能輸入由26個英文字母組成的字串:^[A-Za-z]+$。
19.只能輸入由26個大寫英文字母組成的字串:^[A-Z]+$。
20.只能輸入由26個小寫英文字母組成的字串:^[a-z]+$。
21.驗證是否含有^%&',;=?$等字元:[%&',;=?$\^]+。
22.只能輸入漢字:^[u4e00-u9fa5]{0,}$。
23.驗證URL:^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$。
24.驗證一年的12個月:^(0?[1-9]|1[0-2])$正確格式為:01~09和10~12。
25.驗證一個月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$正確格式為;01~09、10~29和“30”~“31”。
26.獲取日期正規表示式:\d{4}[年|-|.]d{1-12}[月|-|.]d{1-31}日?
評註:可用來匹配大多數年月日資訊。
27.匹配雙位元組字元(包括漢字在內):[^ - ]
評註:可以用來計算字串的長度(一個雙位元組字元長度計2,ASCII字元計1)
28.匹配空白行的正規表示式:ns*r
評註:可以用來刪除空白行
29.匹配HTML標記的正規表示式:<(S*?)[^>]*>.*?</>|<.*? />
評註:網上流傳的版本太糟糕,上面這個也僅僅能匹配部分,對於複雜的巢狀標記依舊無能為力
30.匹配首尾空白字元的正規表示式:^s*|s*$
評註:可以用來刪除行首行尾的空白字元(包括空格、製表符、換頁符等等),非常有用的表示式
31.匹配網址URL的正規表示式:[a-zA-z]+://[^s]*
評註:網上流傳的版本功能很有限,上面這個基本可以滿足需求
32.匹配帳號是否合法(字母開頭,允許5-16位元組,允許字母數位下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
評註:表單驗證時很實用
33.匹配騰訊QQ號:[1-9][0-9]{4,}
評註:騰訊QQ號從10 000 開始
34.匹配中國郵政編碼:[1-9]\d{5}(?!d)
評註:中國郵政編碼為6位數位
35.匹配ip地址:([1-9]{1,3}.){3}[1-9]。
評註:提取ip地址時有用
36.匹配MAC地址:([A-Fa-f0-9]{2}:){5}[A-Fa-f0-9]
到此這篇正規表示式替換技巧的文章就介紹到這了,更多相關正規表示式替換技巧內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45