您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

UltraEdit正则表达式搜索替换小技巧

2025/2/14 19:59:37发布25次查看
由于需要,要将admodfy导出来的ldf文件内容做修改,样例如下 dn:cn = 蔡妮 , ou = adimportou , dc = mydomain , dc = com , dc = cn changetype:add objectclass:contact cn:蔡妮 sn:蔡妮 mailnickname:lily . cai targetaddress:lily . cai@mydomain . com
由于需要,要将admodfy导出来的ldf文件内容做修改,样例如下
dn: cn=蔡妮,ou=ad import ou,dc=mydomain,dc=com,dc=cn
changetype: add
objectclass: contact
cn: 蔡妮
sn: 蔡妮
mailnickname: lily.cai
targetaddress: lily.cai@mydomain.com.cn
proxyaddresses: x400:c=us;a= ;p=mydomain;o=exchange;s=lily.cai;
proxyaddresses: smtp:lily.cai@mydomain.com.cn
mail: lilycai@mydomain.com.cn
company: 总部
department: 财务
displayname: 蔡妮[lily]
name: 蔡妮
profilepath: /servernameuserconf$lily.cai
要将含有x400邮件地址的行和profilepath的行删除掉,修改为
dn: cn=蔡妮,ou=ad import ou,dc=mydomain,dc=com,dc=cn
changetype: add
objectclass: contact
cn: 蔡妮
sn: 蔡妮
mailnickname: lily.cai
targetaddress: smtp:lily.cai@mydomain.com.cn
proxyaddresses: smtp:lily.cai@mydomain.com.cn
mail: lily.cai@mydomain.com.cn
company: 总部
department: 财务
displayname: 蔡妮[lily]
name: 蔡妮
由于文本中有大量的用户,手工删除很不现实,于是使用ultraedit的正则表达式搜索删除,问题很快解决,用ultraedit打开文本,首先到菜单中选择正则表达式引擎,正则表达式引擎分支位于“配置 - 搜索”之下,有如下选项:
perl 兼容正则表达式
如果选中该选项,则编辑器将基于 boost c++ 库使用 perl 样式的正则表达式(当在查找/替换对话框里选中正则表达式时)。
ultraedit 样式正则表达式
如果选中该选项,则编辑器将在查找/替换对话框里选中正则表达式时使用 ultraedit 样式的正则表达式。
unix 样式正则表达式
如果选中该选项,则编辑器将在查找/替换对话框里选中正则表达式时使用 unix 样式的正则表达式。
选择自己喜好的正则表达式类型,不同的引擎语法不同,比如perl兼容的正则表达式,回车是/r,而在ultraedit风格的以及unix兼容的回车则分别是^p和/n,下面以ultraedit风格来说明。
选好风格后开始搜索,使用ctrl+r弹出替换对话框,钩选“正则表达式”,搜索内容中输入 *x400*^p ,替换为空即可,点击全部替换后,则所有包含x400字样的行都被删除。
附:
正则表达式 (ultraedit 语法):
%  匹配行首 - 表示搜索字符串必须在行首,但不包括任何选定的结果字符中的行终止字符。
$  匹配行尾 - 表示搜索字符串必须在行尾,但不包括任何选定的结果字符中的行终止字符。
?  匹配任何除换行符的字符。
*  匹配任何除换行符外所出现的任意数量的字符。
+  匹配一个或多个前面的字符/表达式。必须找到至少一个出现的字符。不匹配重复的换行符。
++  0 次或多次匹配前面的字符/表达式。不匹配重复的换行符。
^b  匹配一个分页符。
^p  匹配一个换行符 (cr/lf) (段落) (dos 文件)
^r  匹配一个换行符 (仅 cr) (段落) (mac 文件)
^n  匹配一个换行符 (仅 lf) (段落) (unix 文件)
^t  匹配一个制表符
[ ]  匹配任何括号中的单个字符或范围
^{a^}^{b^}  匹配表达式 a 或 b
^  忽略其后的正则表达式字符
相应的替换表达式是 ^x,x 的范围是 1-9。例如: 如果 ^(h*o^) ^(f*s^) 匹配“hello folks”,那么^2 ^1 表示将用“folks hello”替换它。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product