分类: Linux

以下是网上摘录的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*>^} 为 空串 
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后的版本,都有对正则表达式的支持,语法上大同小异,使用正则表达式,会给我们的日志文本处理和字符串匹配带来很大的便利性。工欲善其事,必行利其器。正则表达式,就是我们的日常工作的必备手段之一。
 
 

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

  1. UE中正则表达式

    UltraEdit(后简称UE),是我经常使用的文本编辑软件,其功能的强大,令我由衷地爱上了它.每天不用就全身不爽.从最开始的9.0到现在的 12.10a(本人只用到这个版本),UE都是系统重装后必安 ...

  2. 【UE】常用的UltraEdit使用技巧

    Tip 1: Alt+C 列模式可以说最初选择使用这个文本编辑软件,原因很简单,就是因为“她”具有列编辑模式.如果您还不知道什么是列编辑模式的话,我想您应该好好研究一下啦.这是一个超级“赞”的功能.在 ...

  3. UltraEdit中使用正则表达式

    正则表达式 (UltraEdit Syntax): % 匹配行首 - 表明要搜索的字符串一定在行首. $ 匹配行尾 - 表明要搜索的字符串一定在行尾 ? 匹配除换行符外的任一单个字符. * 匹配任意个 ...

  4. 浅析PHP正则表达式的利用技巧

    浅析PHP正则表达式的利用技巧 正则表达式是什么 正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串. 将匹配的子串替换 ...

  5. python模块 re模块与python中运用正则表达式的特点 模块知识详解

    1.re模块和基础方法 2.在python中使用正则表达式的特点和问题 3.使用正则表达式的技巧 4.简单爬虫例子 一.re模块 模块引入; import re 相关知识: 1.查找: (1)find ...

  6. IDEA Intellij中vim插件使用小技巧

    在 IDEA Intellij小技巧和插件 一文中简单介绍了一下IdeaVim插件.在这里详细总结一下这个插件在日常编程中的一些常用小技巧.供有兴趣使用这个插件,但对Vim还不十分熟悉的朋友参考.当然 ...

  7. PHP中有关正则表达式的函数集锦

    之前学正则表达式的目的是想从网上抓取点小说啊,文档啊,还有获取相应的视频连接然后批量下载.当时初学PHP根本不知道PHP有专门抓包的工具,就像Simple_html_dom.php(在我的其他博文中有 ...

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

    JavaScript中的正则表达式(终结篇) 在之前的几篇文章中,我们了解了正则表达式的基本语法,但那些语法不是针对于某一个特定语言的.这篇博文我们将通过下面几个部分来了解正则表达式在JavaScri ...

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

    博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html Thursday, January 29, 2015 补上第四周笔记,以及本次课程总结. 第四周 ...

随机推荐

  1. VS2013 help viewer搜索结果显示源码以及桌面独立运行help viewer

    安装好VS2013后,启动help viewer2.1在搜索栏中搜搜时结果会出现HTML源码. 要解决这个问题先来看看MINE,即Multipurpose Internet Mail Extensio ...

  2. 如何用pdfbox-app-1.8.10.jar批处理将pdf文档转换成text文档

    1.首先下载pdfbox-app-1.8.10.jar(下载地址:http://pdfbox.apache.org/download.html) 2.将pdfbox-app-1.8.10.jar加载到 ...

  3. 我给女朋友讲编程html系列(2) --Html标题标签h1

    Html是一门标签语言,因此学习Html最快的方式就是学习使用html标签. html标题标签:h1,h2,h3,h4,h5,h6 标题标签总共有6个,h1,h2,h3,h4,h5,h6,从h1到h6 ...

  4. Careercup - Google面试题 - 5377673471721472

    2014-05-08 22:42 题目链接 原题: How would you split a search query across multiple machines? 题目:如何把一个搜索que ...

  5. Leetcode#152 Maximum Product Subarray

    原题地址 简单动态规划,跟最大子串和类似. 一维状态空间可以经过压缩变成常数空间. 代码: int maxProduct(int A[], int n) { ) ; ]; ]; ]; ; i > ...

  6. 【转载】MySQL索引原理及慢查询优化

    原文链接:美团点评技术团队:http://tech.meituan.com/mysql-index.html MySQL凭借着出色的性能.低廉的成本.丰富的资源,已经成为绝大多数互联网公司的首选关系型 ...

  7. 动态调用WCF服务

    动态调用WCF服务,只需要提供*.svc地址, 1:命名空间: using System.ServiceModel.Channels;using System.ServiceModel; 2:创建访问 ...

  8. const int *p与int *const p的区别(转:csdn,suer0101)

    本文只是一篇学习笔记,是看了<彻底搞定C指针>中的相关篇幅后的一点总结,仅此而已! 一.先搞清const int *p与int const *p的区别 它们的区别就是:没有区别!! 无论谁 ...

  9. mysql触发器使用实例

    DELIMITER $$ USE `db`$$ DROP TRIGGER `member_walletinit_trigger`$$ CREATE TRIGGER `member_walletinit ...

  10. C#创建UTF8无BOM文本文件

    In order to omit the byte order mark (BOM), your stream must use a custom instance of UTF8Encoding i ...