婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > EditPlus 正則表達式替換字符串詳解

EditPlus 正則表達式替換字符串詳解

熱門標簽:錫林郭勒盟地圖標注位置 知名的電話機器人 湖南企業(yè)智能外呼系統(tǒng)供應商 RO地圖標注app 電銷機器人公司簡介 福州工作銷售電話機器人 百音電話機器人 高德地圖標注短信簽約 自制電銷機器人
EditPlus的查找,替換,文件中查找支持以下的正則表達式:

Expression Description
\t Tab character.
\n New line.
. Matches any character.
| Either expression on its left and right side matches the target string.
For example, “a|b” matches “a” and “b”.
[] Any of the enclosed characters may match the target character.
For example, “[ab]” matches “a” and “b”. “[0-9]” matches any digit.
[^] None of the enclosed characters may match the target character.
For example, “[^ab]” matches all character EXCEPT “a” and “b”.
“[^0-9]” matches any non-digit character.
* Character to the left of asterisk in the expression should match 0 or more times.
For example “be*” matches “b”, “be” and “bee”.
+ Character to the left of plus sign in the expression should match 1 or more times.
For example “be+” matches “be” and “bee” but not “b”.
? Character to the left of question mark in the expression should match 0 or 1 time.
For example “be?” matches “b” and “be” but not “bee”.
^ Expression to the right of ^ matches only when it is at the beginning of line.
For example “^A” matches an “A” that is only at the beginning of line.
$ Expression to the left of $ matches only when it is at the end of line.
For example “e$” matches an “e” that is only at the end of line.
() Affects evaluation order of expression and also used for tagged expression.
\ scape character. If you want to use character “\” itself, you should use “\\”.



例子:

原始串
str[1]abc[991];
str[2]abc[992];
str[11]abc[993];
str[22]abc[994];
str[111]abc[995];
str[222]abc[996];
str[1111]abc[997];
str[2222]abc[999];

目標串:
abc[1];
abc[2];
abc[11];
abc[22];
abc[111];
abc[222];
abc[1111];
abc[2222];

處理:
查找串:str\[([0-9]+)\]abc\[[0-9]+\]
替換串:abc[\1]

【1】正則表達式應用——替換指定內(nèi)容到行尾
原始文本如下面兩行
abc aaaaa
123 abc 444

希望每次遇到“abc”,則替換“abc”以及其后到行尾的內(nèi)容為“abc efg”
即上面的文本最終替換為:
abc efg
123 abc efg

解決:
① 在替換對話框,查找內(nèi)容里輸入“abc.*”
② 同時勾選“正則表達式”復選框,然后點擊“全部替換”按鈕
其中,符號的含義如下:
“.” =匹配任意字符
“*” =匹配0次或更多

注意:其實就是正則表達式替換,這里只是把一些曾經(jīng)提出的問題加以整理,單純從正則表達式本身來說,就可以引申出成千上萬種特例。

【2】正則表達式應用——數(shù)字替換
希望把
asdadas123asdasdas456asdasdasd789asdasd
替換為:
asdadas[123]asdasdas[456]asdasdasd[789]asdasd

在替換對話框里面,勾選“正則表達式”復選框;
在查找內(nèi)容里面輸入“[0-9][0-9][0-9]”,不含引號
“替換為:”里面輸入“[\0\1\2]”,不含引號
范圍為你所操作的范圍,然后選擇替換即可。

實際上這也是正則表達式的使用特例,“[0-9]”表示匹配0~9之間的任何特例,同樣“[a-z]”就表示匹配a~z之間的任何特例
上面重復使用了“[0-9]”,表示連續(xù)出現(xiàn)的三個數(shù)字
“\0”代表第一個“[0-9]”對應的原型,“\1”代表第二個“[0-9]”對應的原型,依此類推
“[”、“]”為單純的字符,表示添加“[”或“]”,如果輸入“其它\0\1\2其它”,則替換結果為:

asdadas其它123其它asdasdas其它456其它asdasdasd其它789其它asdasd

功能增強(by jiuk2k):
如果將查找內(nèi)容“[0-9][0-9][0-9]”改為“[0-9]*[0-9]”,對應1 或 123 或 12345 或 …
大家根據(jù)需要定制

相關內(nèi)容還有很多,可以自己參考正則表達式的語法仔細研究一下

【3】正則表達式應用——刪除每一行行尾的指定字符
因為這幾個字符在行中也是出現(xiàn)的,所以肯定不能用簡單的替換實現(xiàn)
比如
12345 1265345
2345
需要刪除每行末尾的“345”
這個也算正則表達式的用法,其實仔細看正則表達式應該比較簡單,不過既然有這個問題提出,說明對正則表達式還得有個認識過程,解決方法如下
解決:
在替換對話框中,啟用“正則表達式”復選框
在查找內(nèi)容里面輸入“345$”
這里“$”表示從行尾匹配

如果從行首匹配,可以用“^”來實現(xiàn),不過 EditPlus 有另一個功能可以很簡單的刪除行首的字符串
a. 選擇要操作的行
b. 編輯-格式-刪除行注釋
c. 在彈出對話框里面輸入要清除的行首字符,確定

【4】正則表達式應用——替換帶有半角括號的多行
幾百個網(wǎng)頁中都有下面一段代碼:
\n
在替換對話框啟用“正則表達式”選項,這時就可以完成替換了

【5】正則表達式應用——刪除空行
啟動EditPlus,打開待處理的文本類型文件。
①、選擇“查找”菜單的“替換”命令,彈出文本替換對話框。選中“正則表達式”復選框,表明我們要在查找、替換中使用正則表達式。然后,選中“替換范圍”中的“當前文件”,表明對當前文件操作。
②、單擊“查找內(nèi)容”組合框右側的按鈕,出現(xiàn)下拉菜單。
③、下面的操作添加正則表達式,該表達式代表待查找的空行。(技巧提示:空行僅包括空格符、制表符、回車符,且必須以這三個符號之一作為一行的開頭,并且以回車符結尾,查找空行的關鍵是構造代表空行的正則表達式)。
直接在”查找”中輸入正則表達式“^[ \t]*\n”,注意\t前有空格符。
(1)選擇“從行首開始匹配”,“查找內(nèi)容”組合框中出現(xiàn)字符“^”,表示待查找字符串必須出現(xiàn)在文本中一行的行首。
(2)選擇“字符在范圍中”,那么在“^”后會增加一對括號“[]”,當前插入點在括號中。括號在正則表達式中表示,文本中的字符匹配括號中任意一個字符即符合查找條件。
(3)按一下空格鍵,添加空格符。空格符是空行的一個組成成分。
(4)選擇“制表符”,添加代表制表符的“\t”。
(5)移動光標,將當前插入點移到“]”之后,然后選擇“匹配 0 次或更多”,該操作會添加星號字符“*”。星號表示,其前面的括號“[]”內(nèi)的空格符或制表符,在一行中出現(xiàn)0個或多個。
(6)選擇“換行符”,插入“\n”,表示回車符。
④、“替換為”組合框保持空,表示刪除查找到的內(nèi)容。單擊“替換”按鈕逐個行刪除空行,或單擊“全部替換”按鈕刪除全部空行(注意:EditPlus有時存在“全部替換”不能一次性完全刪除空行的問題,可能是程序BUG,需要多按幾次按鈕)。

1.在漢化的時候,是否經(jīng)常碰到這樣的語句需要翻譯:

Code:
“Error adding the post!”;
“Error adding the comment!”;
“Error adding the user!”;

如果有很多類似的文件一個一個翻譯顯然很累而且感覺很無聊。

其實可以這樣處理,在Editplus里面用 替換 功能,在替換對話框選中“正則表達式”復選框:
查找原文件:

Code:
“Error adding ([^!|"|;]*)

替換成:

Code:
“在增加\1時發(fā)生錯誤

這樣替換之后發(fā)生了什么?結果是:

Code:
“在增加the post時發(fā)生錯誤!”;
“在增加the comment時發(fā)生錯誤!”;
“在增加the user時發(fā)生錯誤!”;

ok,接下來你會怎么做?當然再替換一次把the post、the comment、the user替換成你要翻譯的詞。得到最后的結果:

Code:
“在增加帖子時發(fā)生錯誤!”;
“在增加評論時發(fā)生錯誤!”;
“在增加用戶時發(fā)生錯誤!”;

2.要提取的單詞在中間,比如:

Code:
can not be deleted because
can not be added because
can not be updating because

可以用這種方式:
在Editplus里面用 替換 功能,在替換對話框選中“正則表達式”復選框:
查找原文件:

Code:
can not be ([^ ]*) because

替換成:

Code:
無法被\1因為

這樣替換之后發(fā)生了什么?結果是:

Code:
無法被deleted因為
無法被added因為
無法被updating因為

其余步驟如上。

在漢化量很大而且句式比較單調的情況下對效率的提高很明顯!

解釋一下:([^!|"|;]*) 的意思是 不等于 ! 和 ” 和 ; 中的任何一個,意思就是這3個字符之外的所有字符將被選中(替換區(qū)域);
\1 即被選中的替換區(qū)域所在的新位置(復制到這個新位置)。

3.經(jīng)常手工清理一行一行地刪除文本文件里面的空白行,其實可以交給Editplus更好的完成,在Editplus里面用替換功能,在替換對話框選中“正則表達式”復選框:
查找原文件:

Code:
^[ \t]*\n

替換部分為空就可以刪除空白行了,執(zhí)行一下看看:)

abandon[2'b9nd2n]v.拋棄,放棄
abandonment[2'b9nd2nm2nt]n.放棄
abbreviation[2bri:vi'ei62n]n.縮寫
abeyance[2'bei2ns]n.緩辦,中止
abide[2'baid]v.遵守
ability[2'biliti]n.能力
able['eibl]adj.有能力的,能干的
abnormal[9b'n0:m2l]adj.反常的,變態(tài)的
aboard[2'b0:d]adv.船(車)上

1.
查找: (^[a-zA-Z0-0\-]+)(\[*.*\]+)(.*)
替換: @@@@@”\1″,”\2″,”\3″,
效果:
@@@@@”abandon”,”[2'b9nd2n]“,”v.拋棄,放棄”,
@@@@@”abandonment”,”[2'b9nd2nm2nt]“,”n.放棄”,
@@@@@”abbreviation”,”[2bri:vi'ei62n]“,”n.縮寫”,
@@@@@”abeyance”,”[2'bei2ns]“,”n.緩辦,中止”,
@@@@@”abide”,”[2'baid]“,”v.遵守”,
@@@@@”ability”,”[2'biliti]“,”n.能力”,
@@@@@”able”,”['eibl]“,”adj.有能力的,能干的”,
@@@@@”abnormal”,”[9b'n0:m2l]“,”adj.反常的,變態(tài)的”,
@@@@@”aboard”,”[2'b0:d]“,”adv.船(車)上”,

2.
查找: \n
替換:
注: 要次替換內(nèi)容為空
效果:
@@@@@”abandon”,”[2'b9nd2n]“,”v.拋棄,放棄”,@@@@@”abandonment”,”[2'b9nd2nm2nt]“,”n.放棄”,@@@@@”abbreviation”,”[2bri:vi'ei62n]“,”n.縮寫”,@@@@@”abeyance”,”[2'bei2ns]“,”n.緩辦,中止”,@@@@@”abide”,”[2'baid]“,”v.遵守”,@@@@@”ability”,”[2'biliti]“,”n.能力”,@@@@@”able”,”['eibl]“,”adj.有能力的,能干的”,@@@@@”abnormal”,”[9b'n0:m2l]“,”adj.反常的,變態(tài)的”,@@@@@”aboard”,”[2'b0:d]“,”adv.船(車)上”,@@@@@”abolish”,”[2'b0li6]“,”v.廢除,取消”,@@@@@”abolition”,”[9b2'li62n]“,”n.廢除,取消”

3.
查找: @@@@@
替換: \n
效果:
“abandon”,”[2'b9nd2n]“,”v.拋棄,放棄”,
“abandonment”,”[2'b9nd2nm2nt]“,”n.放棄”,
“abbreviation”,”[2bri:vi'ei62n]“,”n.縮寫”,
“abeyance”,”[2'bei2ns]“,”n.緩辦,中止”,
“abide”,”[2'baid]“,”v.遵守”,
“ability”,”[2'biliti]“,”n.能力”,
“able”,”['eibl]“,”adj.有能力的,能干的”,
“abnormal”,”[9b'n0:m2l]“,”adj.反常的,變態(tài)的”,
“aboard”,”[2'b0:d]“,”adv.船(車)上”,
“abolish”,”[2'b0li6]“,”v.廢除,取消”,

4. 任務完成
您可能感興趣的文章:
  • EditPlus 正則表達式 實戰(zhàn)(3)
  • EditPlus中的正則表達式 實戰(zhàn)(2)
  • EditPlus中的正則表達式 實戰(zhàn)(1)
  • EditPlus中的正則表達式實戰(zhàn)(5)
  • EditPlus中的正則表達式實戰(zhàn)(6)
  • notepad、editplus等軟件常用的文本整理正則表達式
  • php和editplus正則表達式去除空白行
  • editplus EmEditor和searchandreplace正則表達式
  • EditPlus中的正則表達式 實戰(zhàn)(4)

標簽:秦皇島 怒江 昆明 玉林 西寧 茂名 吉林 河北

巨人網(wǎng)絡通訊聲明:本文標題《EditPlus 正則表達式替換字符串詳解》,本文關鍵詞  EditPlus,正則,表達式,替換,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《EditPlus 正則表達式替換字符串詳解》相關的同類信息!
  • 本頁收集關于EditPlus 正則表達式替換字符串詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 依兰县| 关岭| 青川县| 灵寿县| 剑阁县| 呼伦贝尔市| 广宗县| 海伦市| 郁南县| 康保县| 南澳县| 弥渡县| 安平县| 手机| 禄劝| 新蔡县| 葫芦岛市| 雷波县| 安乡县| 静乐县| 青龙| 临清市| 秦皇岛市| 达孜县| 大化| 惠安县| 竹山县| 宁南县| 永登县| 周至县| 海晏县| 德安县| 宝丰县| 剑川县| 米易县| 安图县| 修水县| 武夷山市| 泽州县| 平远县| 淳安县|