ultraedit替换所有空白行 --正则表达式使用
删除空行: 替换 %[ ^t]++^p 为 空串
删除行尾空格: 替换 [ ^t]+$ 为 空串
删除行首空格: 替换 %[ ^t]+ 为 空串
每行设置为固定的4个空格开头: 替换 %[ ^t]++^([~ ^t^p]^) 为 " ^1"
每段设置为固定的4个空格开头: 替换 %[ ^t]+ 为 " "
(如果一行是以空格开始的,则视之为一段的开始行)
将一段合并为一行: 替换 [ ^t]++^p^([~ ^t^p]^) 为 ^1
(注意: 此处假定文本是以DOS方式回车换行 - CR/LF)
去掉HTML TAG: 替换 ^{<*>^}^{<*^p*>^} 为 空串
删除HTML中的所有: 替换 <[ ]++a *[ ]++href[ ]++=*> 为 空串
删除文本中指定的前2列字符: 替换 %?? 为 空串
在第4列后插入2列空白字符: 替换 %^(????^)^(?^) 为 "^1 ^2"
查找所有的数字: [0-9]+[.]++[0-9]+
查找所有的单词: [a-z]+
查找所有的网址: http://[a-z0-9^~`_./^-^?=&]+
实际中的经验:
例一:
我取回来的文本是这样的
aaa000
0abcdefg
0abcdefg
aaa001
0abcdefg
0abcdefg
aaa002
1abcdefg
1abcdefg
aaa003
0abcdefg
0abcdefg
后面还有,我只想取后面是1abcdefg的前面那个编号,比如aaa002,其余的都删除,分三步走,
1、用ultraedit里正则表达式的perl语言,删除0abcdefg两行和前面有编号的那行
将aa.*\r\n\s*0.*\.\r\n\s*0.*\.替换为空
2、不用正则,直接将文本1abcdefg替换为空
3、用ultraedit里正则表达式的ultraedit语言,删除空行,就是上面提到的
替换 %[ ^t]++^p 为 空串
例二:
删除含Error的行
将.*Error.*\r\n 替换为空
例三:
两个文本,A.txt和B.txt,将B.txt里包含A.txt的串全部删除,用一个Findstr就可以了
findstr /v /g:A.txt B.txt >>3.txt
例四:
对多行重复的删除,找了半天,发现UltrEdit里面就带这个功能
在文件-〉排序-〉高级排序-〉删除重复
so easy
注意: 替换的时候需要勾选使用正则表达式选项