收集了一些editplus的正则表达式,很有用,特此分享。
EditPlus中的正则表达式中英文详解(附常用实例)
t Tab character.tab符号
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”.“*”号左边的那个字符匹配0次或者更多次
+ 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”.“*”号左边的那个字符匹配1次或者更多次
? 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”.“*”号左边的那个字符匹配0次或者1次
^ 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 “”.转义字符,如果你想匹配""。请使用""
你使用正则表达式找到的东西
常用EditPlus正则表达式实例
把img标签的alt去掉
搜索内容:alt="[^src| ]* 注:"|"符号后有个空格
替换内容:alt=""
把带属性和样式的<font>标签去掉
第一步:把</font>去掉。
搜索内容:</font>
替换内容:不填
第二步:去掉带属性和样式的<font>标签
搜索内容:<font [^>]*>
替换内容:不填
去掉所有的空行
搜索内容:nn
替换内容:n
以下是针对特殊中文的一些替换
^[0-9].*n
^[^第].*n
^[习题].*n
^[sS ]*n
^[0-9]*.
^[sS ]*n
<p[^<>*]>
editplus查找替换的正则表达式应用
表达式 说明
t 制表符.
n 新行.
. 匹配任意字符.
| 匹配表达式左边和右边的字符. 例如, "ab|bc" 匹配 "ab" 或者 "bc".
[] 匹配列表之中的任何单个字符. 例如, "[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" 开头的行.
contentnbsp; 其左边的表达式被匹配在一行的结尾. 例如 "econtentquot; 仅仅匹配以 "e" 结尾的行.
() 影响表达式匹配的顺序,并且用作表达式的分组标记.
转义字符. 如果你要使用 "" 本身, 则应该使用 "".
正则表达式应用——删除空行 ^[ t]*n
表达式的分组使用()来标记. 表达式的分组可以被引用为 , 1, 2, 3, 等等. 表示被匹配的所有字符串. 1 表示被匹配的第一个分组, 2 表示第二个分组, 依此类推. 举例如下.
原文 查找 替换 结果
abc (ab)(c) -1-2 abc-ab-c
abc a(b)(c) -1-2 abc-b-c
abc (a)b(c) -1-2 abc-a-c
【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]”,不含引号
“替换为:”里面输入“[ 12]”,不含引号
范围为你所操作的范围,然后选择替换即可。
实际上这也是正则表达式的使用特例,“[0-9]”表示匹配0~9之间的任何特例,同样“[a-z]”就表示匹配a~z之间的任何特例
上面重复使用了“[0-9]”,表示连续出现的三个数字
“