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

2024-01-17 08:32

本文主要是介绍UltraEdit正则表达式搜索替换小技巧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2007年05月11日 11:49:00

由于需要,要将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:
/ ServerName UserConf $ 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

^ 忽略其后的正则表达式字符

^(*^) 在表达式加上括号或标签在替换命令中使用。正则表达式中可以有 9 个表达式标签,数字根据它们在正则表达式中的次序确定数字。

相应的替换表达式是 ^x,x 的范围是 1-9。例如: 如果 ^(h*o^) ^(f*s^) 匹配"hello folks",那么^2 ^1 表示将用"folks hello"替换它。



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1604316


这篇关于UltraEdit正则表达式搜索替换小技巧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/615449

相关文章

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

如何将Tomcat容器替换为Jetty容器

《如何将Tomcat容器替换为Jetty容器》:本文主要介绍如何将Tomcat容器替换为Jetty容器问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat容器替换为Jetty容器修改Maven依赖配置文件调整(可选)重新构建和运行总结Tomcat容器替

电脑win32spl.dll文件丢失咋办? win32spl.dll丢失无法连接打印机修复技巧

《电脑win32spl.dll文件丢失咋办?win32spl.dll丢失无法连接打印机修复技巧》电脑突然提示win32spl.dll文件丢失,打印机死活连不上,今天就来给大家详细讲解一下这个问题的解... 不知道大家在使用电脑的时候是否遇到过关于win32spl.dll文件丢失的问题,win32spl.dl

电脑报错cxcore100.dll丢失怎么办? 多种免费修复缺失的cxcore100.dll文件的技巧

《电脑报错cxcore100.dll丢失怎么办?多种免费修复缺失的cxcore100.dll文件的技巧》你是否也遇到过“由于找不到cxcore100.dll,无法继续执行代码,重新安装程序可能会解... 当电脑报错“cxcore100.dll未找到”时,这通常意味着系统无法找到或加载这编程个必要的动态链接库

Python使用DeepSeek进行联网搜索功能详解

《Python使用DeepSeek进行联网搜索功能详解》Python作为一种非常流行的编程语言,结合DeepSeek这一高性能的深度学习工具包,可以方便地处理各种深度学习任务,本文将介绍一下如何使用P... 目录一、环境准备与依赖安装二、DeepSeek简介三、联网搜索与数据集准备四、实践示例:图像分类1.

如何关闭 Mac 触发角功能或设置修饰键? mac电脑防止误触设置技巧

《如何关闭Mac触发角功能或设置修饰键?mac电脑防止误触设置技巧》从Windows换到iOS大半年来,触发角是我觉得值得吹爆的MacBook效率神器,成为一大说服理由,下面我们就来看看mac电... MAC 的「触发角」功能虽然提高了效率,但过于灵敏也让不少用户感到头疼。特别是在关键时刻,一不小心就可能触

前端bug调试的方法技巧及常见错误

《前端bug调试的方法技巧及常见错误》:本文主要介绍编程中常见的报错和Bug,以及调试的重要性,调试的基本流程是通过缩小范围来定位问题,并给出了推测法、删除代码法、console调试和debugg... 目录调试基本流程调试方法排查bug的两大技巧如何看控制台报错前端常见错误取值调用报错资源引入错误解析错误

mysql线上查询之前要性能调优的技巧及示例

《mysql线上查询之前要性能调优的技巧及示例》文章介绍了查询优化的几种方法,包括使用索引、避免不必要的列和行、有效的JOIN策略、子查询和派生表的优化、查询提示和优化器提示等,这些方法可以帮助提高数... 目录避免不必要的列和行使用有效的JOIN策略使用子查询和派生表时要小心使用查询提示和优化器提示其他常