ultraEdit是人们最常用的字处理软件之一,如果能够掌握字符串查找、替换方法,一定能让你在日常字符串操作中如虎添翼,事半功倍。
字符串替换包括查找,因此文中主要讲述字符串替换。字符串替换包括普通字符替换、通配符替换和正则表达式替换三种,普通字符串替换属于精确匹配,在此不必多讲。以下主要说说通配符替换和正则表达式替换。
一、通配符替换。
1)删除空行:替换%[^t]++^p为空串
2)删除行尾空格:替换[^t]+$为空串
3)删除行首空格:替换%[^t]+为空串
4)每行设置为固定的4个空格开头:替换%[^t]++^([~^t^p]^)为"^1"
5)每段设置为固定的4个空格开头:替换%[^t]+为""(如果一行是以空格开始的,则视之为一段的开始行)
6)将一段合并为一行:替换[^t]++^p^([~^t^p]^)为^1(注意:此处假定文本是以DOS方式回车换行-CR/LF)
7)去掉HTMLTAG:替换^{<*>^}^{<*^p*>^}为空串
8)删除HTML中的所有:替换<[]++a*[]++href[]++=*>为空串
9)删除文本中指定的前2列字符:替换%??为空串
10)在第4列后插入2列空白字符:替换%^(????^)^(?^)为"^1^2"
11)查找所有的数字:[0-9]+[.]++[0-9]+
12)查找所有的单词:[a-z]+
13)查找所有的网址:http://[a-z0-9^~`_./^-^?=&]+
日常工作中,使用这些通配符替换就能搞定字处理工作,但有时候需要更灵活的替换方式,那请继续往下看。
%匹配行首-表明要搜索的字符串一定在行首.
$匹配行尾-表明要搜索的字符串一定在行尾
?匹配除换行符外的任一单个字符.
*匹配任意个数的字符出现任意次数(不包括换行符)
+匹配前导字符或者表达式出现一次或者更多次(不包括换行符)
++匹配前导字符或者表达式不出现或者出现一次以上(不包括换行符)
^b匹配页中断符
^p匹配DOS文件的换行符
^r匹配MAC文件的换行符(CROnly)
^n匹配UNIX文件的换行符(LFOnly)
^t匹配一个制表符
[]匹配方括号中的单个的字符
删除空行:替换%[^t]++^p为空串,可详见UltraEdit中用正则表达式删除多余空行。
删除行尾空格:替换[^t]+$为空串
删除行首空格:替换%[^t]+为空串,如下图所示:
二、正则表达式替换技巧
UltraEdit正则表达式(UltraEditSyntax)
%1搜索以1开头的行
1$搜索以1为结尾的行
?匹配单字符
*匹配多字符
Te+st匹配"test","teest","teeeest"等.但不匹配"tst".
te++st匹配"test","teest","teeeest","tst"等.但不匹配.
^p新行(DOSFiles格式)
^r新行(MACFiles格式)
^n新行(UNIXFiles格式)
^ttab键
[1-9]匹配1-9的数字
[linux]匹配linux中任何一个单词
[~0-9]除数字外任何一个词
"^{John^}^{Tom^}"搜索john和tom如johnsdfasdftom被选种,当然不包括sdfasdf,其中^{和^}是分割符
例子:
1:替换空格或TAB后的所有字符(这个常常在取字段列名时有用到,因为用desc列出来的信息降了列名外还有列类型,列空约束和列注释信息):
命令:将[^t]+*$替换为课程
1.1:替换前
替换后
1.2大家思考:如何删除空格或TAB后的字符?替换为空就可以,操作如下
用CRTL+R调出替换窗口,然后按下面的输入,替换,(注意,此处要选择正则表示式,默认情况下不勾选)
从替换结果来看,说明查找的顺序是从前到后,替换是从第一个开始查找到的字符位置开始的。
依此递推,当我们想将特定字符串后的内容替换为特定内容或者空时,,只需将%*{特定字符串}替换成空为可以了。
2、空行或仅含有空格和TAB键的行
操作:将%[^t]++^p替换为空
替换前,图
2.2:替换后,图3.2:
依此递推,如果想将仅含有特定字符串的行删除,也可采用%{特定字符串}++^p替换为空为可以了
3、在行末添加;分号字符
操作:将$替换成;
替换前,如图
替换后:
4、在行首添加添加4个空格:
操作:%替换成四个空格或者用UE的列块模式
4.1:替换前,如图查找内容“%”,替换为输入“”四个空格
替换后,如下图
4.2如果在行首添加insertintoT(课程名)values('如何操作呢
替换后如下图
(注意:结合4和5操作可以批量生成sql语句)
5、将含有数据字符串的行删除:
操作:将%*数据*^p替换成空
替换前,如图
操作
替换后
6、以;做分隔,进行分行处理
操作:将;替换成;^p
操作前如上图,替换,查找内容“;”,替换为“^p”
替换后,如下图,(如果想让最后一项也替换在虚拟机的使用后边加分号)
小结:
以上是一通配符和正则表达式在ultaEdit中的使用技巧,掌握这些技巧对我们日常的文本处理和字符串匹配带来很大的便利性。
上一条:UltraEdit使用,UE常见快捷键操作
下一条:UltraEdit软件查看GenBank全基因组序列