来自editplus的帮助文件中的叙述。

——————————————————

正则表达式是一个包含普通文本加上指示为扩展特殊字符的搜索字符串的搜索选项。正则表达式允许更多的高级搜索和替换。
例如,您可以使用正则表达式“[0-9]”查找任何的数字。同样地您可以使用正则表达式“[^0-9]”查找任何匹配的非数字的字符。
在查找、替换以及在文件中查找命令中,EditPlus 支持下列的正则表达式。
表达式      描述
\t     制表(跳格)字符。
\n     换行。
.     匹配任何字符。
|     在它的左边和右边的任何一个表达式匹配目标字符串。例如“a|b”匹配“a”和“b”。
[]     括号内的任何字符可能匹配目标字符。例如“[ab]”匹配“a”和“b”;“[0-9]”匹配任何数字。
[^]     括号内的没有任何字符可能匹配目标字符。例如“[^ab]”匹配“a”和“b”除外的所有字符;“[^0-9]”匹配任何非数字的字符。
*     在星号左边的字符在表达式中可能匹配 0 次或多次。例如“be*”匹配“b”,“be”和“bee”。
+     在加号左边的字符在表达式中可能匹配 1 次或多次。例如“be+”匹配“be”和“bee”,但不匹配“b”。
?     在问号左边的字符在表达式中可能匹配 0 次或 1 次。例如“be?”匹配“b”和“be”,但不匹配“bee”。
^     仅当 ^ 右边的表达式在行开始的位置时匹配。例如“^A”仅匹配在行开始位置的“A”。
$     仅当 $ 左边的表达式在行结束的位置时匹配。例如“e$”仅匹配在行结束位置的“e”。
()     影响表达式的计算顺序同时也用来标记表达式。
\     转义字符。若您要使用字符“\”本身,您必须使用“\\”。

已标记的表达式是由()围住的。标记的表达式可以被 \0、\1、\2、\3 等引用。\0 指示一个匹配完整子串的标记的表达式。\1 指示第一个标记的表达式,\2 是第二个,等等。查看下列的例子。

原文         搜索           替换                   结果
abc          (ab)(c)      \0-\1-\2       abc-ab-c
abca        (b)(c)        \0-\1-\2       abc-b-c
abc          (a)b(c)      \0-\1-\2        abc-a-c

比如我们要在一个文本中查找8位数字的字符串,比如说是淘宝客的pid,我们可以这样来查找替换:

[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]  连续8次就可以的,若是查找1开头的8位数字的话,可以用[1][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]


【1】正则表达式应用——替换指定内容到行尾
原始文本如下面两行
abc aaaaa
123 abc 444

希望每次遇到“abc”,则替换“abc”以及其后到行尾的内容为“abc efg”
即上面的文本最终替换为:
abc efg
123 abc efg

解决:
① 在替换对话框,查找内容里输入“abc.*”
② 同时勾选“正则表达式”复选框,然后点击“全部替换”按钮
其中,符号的含义如下:
“.” =匹配任意字符
“*” =匹配0次或更多

注意:其实就是正则表达式替换,这里只是把一些曾经提出的问题加以整理,单纯从正则表达式本身来说,就可以引申出成千上万种特例。

【2】正则表达式应用——数字替换
希望把
asdadas123asdasdas456asdasdasd789asdasd
替换为:
asdadas[123]asdasdas[456]asdasdasd[789]asdasd

在替换对话框里面,勾选 “正则表达式”复选框;
在查找内容里面输入“[0-9][0-9][0-9]”,不含引号
“替换为:”里面输入“[\0\1\2]”,不含引号
范围为你所操作的范围,然后选择替换即可。

实际上这也是正则表达式的使用特例,“[0-9]”表示匹配0~9之间的任何特例,同样“[a-z]”就表示匹配a~z之间的任何特例
上面重复使用了“[0-9]”,表示连续出现的三个数字
“\0”代表第一个 “[0-9]”对应的原型,“\1”代表第二个“[0-9]”对应的原型,依此类推
“[”、“]”为单纯的字符,表示添加“[”或“]”,如果输入“其它\0\1\2其它”,则替换结果为:

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

editplus  

本文到目前为止有1条评论

  1. Gravatar Icon
    Editplus是啥啊?

    回复

添加评论