UE中使用正则表达式的一些技巧

以下是网上摘录的UE 技巧

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)去掉HTML TAG: 替换 ^{<*>^}^{<*^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^~`_./^-^?=&]+

UltraEdit正则表达式(UltraEdit Syntax)

%1 搜索以1开头的行

1$ 搜索以1为结尾的行

? 匹配单字符

* 匹配多字符

Te+st 匹配"test", "teest", "teeeest" 等. 但不匹配 "tst".

te++st 匹配"test", "teest", "teeeest","tst" 等. 但不匹配 .

^p 新行 (DOS Files格式)

^r 新行 (MAC Files格式)

^n 新行 (UNIX Files格式)

^t tab键

[1-9] 匹配1-9的数字

[linux] 匹配linux中任何一个单词

[~0-9] 除数字外任何一个词

"^{John^}^{Tom^}" 搜索john和tom 如john sdfasdf tom被选种,当然不包括sdfasdf,其中^{和^}是分割符

以下是自己做的例子:

1:替换空格或TAB后的所有字符(这个常常在取字段列名时有用到,因为用desc列出来的信息降了列名外还有列类型,列空约束和列注释信息):

命令:将[ ^t]+*$替换为空

1.1:替换前,图1.1:

1.2:用CRTL+R调出替换窗口,然后按下面的输入,替换,图1.2(注意,此处要选择正则表示式,默认情况下不勾选):

1.3:替换后,图1.3:

从替换结果来看,说明查找的顺序是从前到后,替换是从第一个开始查找到的字符位置开始的。

依此递推,当我们想将特定字符串后的内容替换为特定内容或者空时,,只需将%*{特定字符串}替换成空为可以了。

2、替换含有空格或TAB键前的所有内容

操作:将%*[ ^t]替换为空

2.1替换前,如图1.1

2.2替换后,图2.2:

依此递推,当我们想将特定字符串前的内容替换为特定内容或者空时,只需将{特定字符串}+*$替换成空为可以了。

3、空行或仅含有空格和TAB键的行

操作:将%[ ^t]++^p替换为空

3.1:替换前,图3.1:

3.2:替换后,图3.2:

依此递推,如果想将仅含有特定字符串的行删除,也可采用%{特定字符串}++^p替换为空为可以了

4、在行末添加;分号字符

操作:将$替换成;

4.1:替换前,如图1.1。

4.2:替换后:

5、在行首添加添加4个空格:

操作:%替换成四个空格或者用UE的列块模式

5.1:替换前,如图1.1

5.2:替换后,图5.2:

6、将含有varchar字符串的行删除:

操作:将%*varchar*^p替换成空

6.1:替换前,如图1.1

6.2:替换后,图6.2:

7、以;做分隔,进行分行处理

操作:将;替换成;^p

7.1:替换前,图7.1:

7.2:替换后,图7.2:

小结:

以上是一些常用的UE的正则式应用,在本人的工作中,常常是在生成创建或修改数据库对象的SQL语句时用到,它给我们平时的工作带来很大的例行性。对于LINUX、UNIX和ORACLE 10G后的版本,都有对正则表达式的支持,语法上大同小异,使用正则表达式,会给我们的日志文本处理和字符串匹配带来很大的便利性。工欲善其事,必行利其器。正则表达式,就是我们的日常工作的必备手段之一。

1.1.JPG

1.2.JPG

1.3.JPG

2.2.JPG

3.1.JPG

3.2.JPG

4.2.JPG

6.2.JPG

5.2.JPG

7.1.JPG

7.2.JPG

时间: 2024-10-12 16:57:36

UE中使用正则表达式的一些技巧的相关文章

UE中正则表达式

UltraEdit(后简称UE),是我经常使用的文本编辑软件,其功能的强大,令我由衷地爱上了它.每天不用就全身不爽.从最开始的9.0到现在的 12.10a(本人只用到这个版本),UE都是系统重装后必安之物.UE本身除了普通的文本编辑功能以外,对十六进制文件的编辑能力也是十分了得,由于工 作原因它十六制下的魅力我体会不大,希望有了解的XDJM们不惜文字,共享一下.不多说,下面是UE中沿用几代的正则表达式语法. UltraEdit风格正则表达式语法 1.% 功能说明: 匹配一行的开始位置.这个符号表

【UE】常用的UltraEdit使用技巧

Tip 1: Alt+C 列模式可以说最初选择使用这个文本编辑软件,原因很简单,就是因为"她"具有列编辑模式.如果您还不知道什么是列编辑模式的话,我想您应该好好研究一下啦.这是一个超级"赞"的功能.在对大文本进行批量的列编辑时候非她莫属(如果您是Windows平台上另外一个强大的文本编辑软件gVim的使用者除外).快实验一下这个功能吧. Tip 2:Ctrl+W 切换自动换行这个快捷键您用过么?您一定有过查看一行文字超级长,不得不拖动下面的滚动条进行阅读的时候,这样

UltraEdit中使用正则表达式

正则表达式 (UltraEdit Syntax): % 匹配行首 - 表明要搜索的字符串一定在行首. $ 匹配行尾 - 表明要搜索的字符串一定在行尾 ? 匹配除换行符外的任一单个字符. * 匹配任意个数的字符出现任意次数(不包括换行符) + 匹配前导字符或者表达式出现一次或者更多次(不包括换行符) ++ 匹配前导字符或者表达式不出现或者出现一次以上(不包括换行符) ^b 匹配页中断符 ^p 匹配DOS文件的换行符 ^r 匹配MAC文件的换行符(CR Only) ^n 匹配UNIX文件的换行符 (

IDEA Intellij中vim插件使用小技巧

在 IDEA Intellij小技巧和插件 一文中简单介绍了一下IdeaVim插件.在这里详细总结一下这个插件在日常编程中的一些常用小技巧.供有兴趣使用这个插件,但对Vim还不十分熟悉的朋友参考.当然基本的hjkl移动光标和几种常见模式等等基本概念就略过不提了. 为了确保只包含常用操作,这里提到的技巧都没有从现成文档里抄,而是凭记忆列出(不常用自然就不记得了).估计会有所遗漏,慢慢再补充. 1. 切换Vim模拟器状态 这个插件允许设置一个快捷键一键开启或关闭,在切换模式时会同时自动切换keyma

JavaScript正则表达式快速判断技巧

原文:JavaScript正则表达式快速判断技巧 这里是JS的正则的一点心得,并不是最完整的规则汇总,更侧重实际运用中的快速判断,初学者接触正则之后往往会被一堆星号括号给弄晕,有了一些速判技巧就能从整体上把握从而不慌乱. JS正则快速判断技巧的核心就是:注意圆括号和问号.这已经能够应付大部分实际应用了. 一.圆括号 众所周知,正则中中括号表示范围,大括号表示重复次数,圆括号表示分组. 圆括号表示分组,但是分组内还有很多文章,细分一下: (1):圆括号本身表示分组,同时会保存匹配的项,这叫捕获性分

JavaScript中的正则表达式(终结篇)

JavaScript中的正则表达式(终结篇) 在之前的几篇文章中,我们了解了正则表达式的基本语法,但那些语法不是针对于某一个特定语言的.这篇博文我们将通过下面几个部分来了解正则表达式在JavaScript中的使用: JavaScript对正则表达式的支持程度 支持正则表达式的RegExp类型 RegExp的实例属性 RegExp的实例方法 RegExp的构造函数属性 简单的应用 第一部分:JavaScript对正则表达式的支持程度 之前我介绍了正则表达式的基本语法,如果大家不是很了解可以先看下面

Python中re(正则表达式)模块函数学习

今天学习了Python中有关正则表达式的知识.关于正则表达式的语法,不作过多解释,网上有许多学习的资料.这里主要介绍Python中常用的正则表达式处理函数. 方法/属性 作用 match() 决定 RE 是否在字符串刚开始的位置匹配 search() 扫描字符串,找到这个 RE 匹配的位置 findall() 找到 RE 匹配的所有子串,并把它们作为一个列表返回 finditer() 找到 RE 匹配的所有子串,并把它们作为一个迭代器返回 match() 函数只检查 RE 是否在字符串开始处匹配

Coursera-Getting and Cleaning Data-week4-R语言中的正则表达式以及文本处理

Coursera-Getting and Cleaning Data-Week4 Thursday, January 29, 2015 补上第四周笔记,以及本次课程总结. 第四周课程主要针对text进行处理.里面包括 1.变量名的处理 2.正则表达式 3.日期处理(参见swirl lubridate包练习) 首先,变量名的处理,奉行两个原则,1)统一大小写tolower/toupper:2)去掉在导入数据时,因为特殊字符导致的合并变量 3)不要重复:4)少用代码缩写 使用的函数包括 替换查找:

程序员在编程开发中的10个实用技巧

程序员在编程开发中的10个实用技巧,下面是我自己在工作中学到的一些简单的技巧和策略,希望能对各位有用.1.     橡皮鸭调试法不知道各位有没有这样的经历,当你正在给别人描述问题的时候,突然灵机一动想到了解决方案?这种情况的产生是有科学依据的.高谈阔论能让我们的大脑重新有条理地组织问题.在这种情况下,你的聊天对象就是“橡皮鸭”.团队中的每个人都应该积极主动乐意地成为彼此的“橡皮鸭”.有时候,如果你幸运的话,你的“橡皮鸭”搞不好还能给出有效的建议呢.2.     快速信息反馈一旦写好代码就要尽快得