- 浏览: 554885 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
hdblocal_:
为什么messageReceived之后,再encode,有点 ...
MINA框架使用总结 -
andey007518:
MINA框架使用总结 -
ymm8505:
我自己的理解 CopyOnWriteArrayList 这个 ...
ArrayList遍历的同时删除 -
spring_springmvc:
可以参考最新的文档:如何在eclipse jee中检出项目并转 ...
Eclipse快捷键-方便查找 -
netwelfare:
文章讲解的不够详细,ArrayList在遍历的同时如果去删除或 ...
ArrayList遍历的同时删除
UltraEdit 是一套功能强大的文本编辑器,可以编辑文字、Hex、ASCII码,可以取代记事本,内建英文单词检查、C++及VB 语法加亮,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。软件附有 HTML Tag 颜色显示、搜寻替换以及无限制的还原功能。UltraEdit 支持二进制和16进制编辑,所以还可以用来修改EXE 或DLL 文件。
本文面向有一定UltraEdit 使用经验的用户,介绍UltraEdit 中的高级功能,这些功能往往被大多数使用者忽视,灵活地使用这些功能将极大的提高工作效率,达到事半功倍的效果。要使用本教程所介绍的所有功能,需要UltraEdit 12.00以上版本或UEStudio 06.10以上版本。
列模式
列模式是讲到UltraEdit 不得不说的一个强大功能。列模式能让您按列选取和编辑数据,而一般编辑器只能按行选择数据。
进入列模式的方法:
使用快捷键Alt+C ,或者使用菜单 列->列模式 ,见下图
进入列模式后,通过按下键盘上的SHIFT键和方向键来选择多列,选中后的效果见下图,光标变成了多列光标。
此时在键盘上敲入字符的时候,被选中的每一列 都会出现相同的字符,比如按下键盘上的”/”两次,效果见下图。这个例子实际上在编程的时候经常用到,当需要注释一段代码的时候,不必一行一行的注释,采用列模式能减少很多重复的工作。
插入
/
填充列:
以下图的书目文件为例,文件中缺少出版社的信息,而这些书的出版社都为”电子工业”,使用插入 /填充列可以方便地完成这个工作。
首先在列模式下选择要填充的列,选择菜单 列->插入 /填充列 ,然后出现一个对话框,在这里填写要插入 的文字后点”确定”。
确定后,刚才选中的每一列 上都出现了”电子工业”四个字。
在这里也许您会问,为什么不用上面的方法,选中多列后直接在键盘上敲入”电子工业”四个字?其实如果敲入的是英文字母或字符是没有问题,当在列模式下敲入的是汉字的时候会出现乱码,因此可以用插入 /填充列这个功能来解决这个问题。
讲到这里是否已感觉到UltraEdit 的强大,接着往下看,您会发现UltraEdit 能做很多Excel的工作,甚至Excel完成不了的工作。
插入
号码:
同样以上面的书目文件为列,我们希望给每行前面加一个行号。
首先进入列模式,选中第一列 ,也就是”书名 = “这几个字前的那一列 ,选择菜单 列->插入 号码 。如下图:
点击后进入以下插入 号码的选项框,我们要插入 的是行号,因此起始数字为1,增量也是1,为了显示得整齐一些我们把列首补零也勾上。
按上图的设置设好后,点”确定”,效果见下图,插入 行号的工作就完成了。
上面说了UltraEdit 能完成很多Excel的工作,下面就看看如何按列求和。
列
/
选择统计:
在上面书目文件中,有一个价格列标名了每本书的价格,若想知道这些书的总价钱,很简单:
首先在列模式下选中这些价格,然后点菜单 列-> 列/选择统计
在出现的对话框中点一下统计,即可看到统计结果,见下图。这个对话框中的”忽略数据中的字符”填的是”,”,这是保证您要统计的数据以千分位分隔的时候也能正常统计,比如这样的数字 “24,501″。
或许您有一个疑问,上面我们处理的文件,它的格式都很工整,但往往我们拿到的初始数据都是不工整的。遇上下图的数据,我们想统计这些书的总价钱的时候怎么办?(第3个字段表示价格)下面介绍转换到固定列功能来解决这个问题。
转换到固定列:
通过菜单 列->转换到固定列 将弹出以下对话框,根据文件的情况设置分隔字符,本例中我们的分隔符是TAB制表符,输入”^t”,其它设置保持默认值,然后点”扫描”按钮,扫描后的结 果显示在最下面的框中,本例中为”10,27,3,8″,表示第一个字段(序号)要占10列,第二个字段(书名)占27列,以此类推。
通常我们不需要改变扫描后的结果,直接点转换就能得到下图的效果,这样无论是做统计,还是做接下来讲到的排序,都很方便。
排序
(Sort)
排序是UltraEdit 提供的非常实用的一个功能,也许您会觉得用Excel更方便,但别忘了Excel只能支持65535行数据,而UltraEdit 处理上百万行的数据也不成问题,功能决不逊色于Excel。
下面用一个简单的文件为例,讲述如何排序,见下图,这个是一个商品表,最后一列 是价格,我们要以价格来排序文件。
首先进入菜单 文件->排序->高级排序/选项 ,见下图
弹出如下的排序选项对话框:
排列顺序 :可以选择是升序还是降序
删除重复项 :可以将文件中一模一样的行删除,只保留一行。(想想用Excel怎么去除重复项)
数字排序 :当要排序的列是数字,并且关心它的实际大小时需要勾选这一项,下面的示例将说明这个问题。
排序列 :一共可以设置4个列,通过起始列和结束列来指定。
假设我们要把这个文件按价格升序排列,在这个对话框中选择升序,因为我们关心数值的实际大小,所以勾选数字排序,通过标尺我们确定价格这一字段从65列起到71列结束。设置好后点”排序”按钮,效果如下图。(如果您看不到标尺,可能通过菜单 视图->显示标尺 来显示)
如果没有勾选数字排序,将会出现下图所示的结果,可以看出它是按字符的ASCII码在大小来排序的,而不是数值的真正大小。
正则表达式搜索与替换
先来解释一下什么叫正则表达式:相信您一定使用过Windows或Dos下用于文件查找的通配符,也就是*和?。如果您想查找某个目录下的所有的 Word文档的话,您很自然地会搜索”*.doc”。在这里,”*”会被解释成任意的字符串。和通配符类似,正则表达式也是用来进行文本匹配的工具,只不 过比起通配符,它能更精确地描述您的需求。当然,代价就是更复杂,例如搜索doc为扩名的文件,正则表达式为”.*\.doc”。别看它复杂了很多,但正 则表达式几乎能满足您的一切搜索需求。比如您可以编写一个正则表达式,用来查找所有以0开头,后面跟着2-3个数字,然后是一个连字号”-”,最后是7或 8位数字的字符串(像010-12345678或0376-7654321)。
在UltraEdit 中,正则表达式被很好地支持,目前的版本中一共支持三种,UltraEdit 风格正则表达式、Unix风格正则表达式和Perl兼容正则表达式,本文介绍Perl兼容正则表达式,这是一条被广泛使用的正则表达式,绝大多数的编程语言都支持这种表达式。
要使用Perl兼容正则表达式,需要在UltraEdit 中做一下设置。点击菜单 高级->配置 ,出现下图的对话框,在左侧选中”正则表达式引擎”,右边勾选”Perl兼容正则表达式”。
正则表达式语法:
由于本文的重点不在正则表达式语法方面,这里只做简单介绍。
元字符:
元字符 | 说明 |
. | 匹配除换行符以外的任意字符 |
\w | 匹配字母或数字或下划线或汉字 |
\s | 匹配任意的空白符() |
\d | 匹配数字 |
\b | 匹配单词的开始或结束 |
\W | 匹配任意不是字母,数字,下划线,汉字的字符 |
\S | 匹配任意不是空白符的字符 |
\D | 匹配任意非数字的字符 |
\B | 匹配不是单词开头或结束的位置 |
^ | 匹配行首 |
$ | 匹配行尾 |
字符转义
如果您想查找元字符本身的话,需要使用”\”来转意。例如”.”代表除换行以外的任意字符,如果您想搜索”.”这个字符的话,需要这样使用”\.”。
重复
语法 | 说明 |
* | 重复零次或更多次 |
+ | 重复一次或更多次 |
? | 重复零次或一次 |
{n} | 重复n次 |
{n,} | 重复n次或更多次 |
{n,m} | 重复n到m次 |
字符集
若要匹配aeiou五个字符中的任意一个,可以表示成[aeiou]。再如[0-9]表示0到9之间的任意一个数字,它的含义和元字符中的\d实际上是一样的。
反意
如果要匹配非a则[^a],除aeiou五个字母之外的表示成[^aeiou],
贪婪与止贪
设有字符串dvea deb cadefb oipi,正则表达式a.*b,表达式的意思是匹配由a开始中间包含任意多个字符并以b结尾,这个表达式匹配出来的结果是a deb cadefb ,而不会是a deb ,我们称这种匹配为贪婪匹配,因为它匹配了尽可能多的字符。要防止这种贪婪匹配,使用”?”,把上面的表达式写成a.*?b的话,匹配出来的结果就是a deb 了。
UltraEdit
中的正则表达式查找
我们以一个html为例,希望搜索一个<ul> Html标记的内容。首先要明确要搜索的字符串的特征:以<ul开头ul>结尾,中间包含任意字符(包括换行),于是表达式可以写 成<ul[\S\s]*?ul>。在这里[\S\s]表示空白和非空白(即所有字符),随后的*表示任意多个,?表示非贪婪搜索。
确定表达式后按下键盘上的Ctrl+F 在弹出的查找对话框中输入表达式,并且勾选”正则表达式”,点”查找下一个”即可看到搜索的效果见下图。
UltraEdit
中的正则表达式替换
在UltraEdit 中正则表达式不但可以用于查询还能用于替换,这里介绍一种复杂的替换。以下图所示的一个文件为例,文中有很多日期,都是这样的格式dd/mm/yyyy,我们希望把他替换成yyyy-mm-dd的格式。
既然是替换,那么必需先查到目标串,用\d表示数据,月和日都一位或两位数据组成,正则表达式表示为\d{1,2},年份都四个数字表示为 \d{4},加上中间的分隔符/,整个日期串可以表示为\d{1,2}/\d{1,2}/\d{4}。我们替换的目标是要把最后的年份放到第一位去,因此 还需要这个搜索能返回各个部分的值,在Perl正则表达式中用()可以返回搜索串中的值,并用$1表示第一个括号中的值,因此我们加上3个括号表达式变成 (\d{1,2})/(\d{1,2})/(\d{4}),那么$1表于日,$2表示月,$3表示年。说到这里要达到我们的目标就很简单了。
按下键盘上的Ctrl+R 调出替换对话框,查找内容为(\d{1,2})/(\d{1,2})/(\d{4}),替换为$3-$2-$1,记得勾上”正则表达式”。
填好后”全部替换”,替换后的效果见下图。
常用的正则表达
行首空格: ^\s+
行尾空格:\s+$
IP地址:[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}
正整数: ^[1-9]\d*$
负整数: ^-[1-9]\d*$
远程文件直接编辑
对于刚接触Linux的人来说,要编辑Linux上的文件是一件很痛苦的使用,Linux上的VI编辑器可不像UltraEdit 这么好用,在没有UltraEdit 前也许您只能把文件下载回来编辑好后再传上来,有了UltraEdit 的话不需要这么麻烦了,他直接打开远程机器上的文件,保存后自动上传到远程服务器。
使用这个功能很简单,点菜单 文件->FTP/Telnet->从FTP打开 ,如下图。
如果您已经配置好了FTP帐号,那么点”浏览站点”就可以看到远程机器上的文件,选中要编辑的文件点打开就可以在UltraEdit 中编辑了。见下图。
如果您是第一次使用这个功能,那么可以点上图中的”帐号”按钮,将会弹出下图所示的帐户管理器,通过简单的设置即可完成帐号的增加。
注意 :不建议使用该功能编辑系统核心文件,保存的时候如果出现网络故障容易导致文件丢失。
冻结窗口
实现上UltraEdit 中并没有冻结窗口这个概念,之所以这么中是因为UltraEdit 可以实现类似Excel的冻结窗口的功能。在Excel中我们常用这个功能来固定表头,这样上下滚动的时候可以保持表头不动。
UltraEdit 中可以实际固定左侧列,滚动水平条的时候只有右边动。例如一个书目文件,第一列 是书名,而价格这一列 在最后,中间夹着很多内容,当把价格这一类滚动到视图中间的时候却看不到书名。因此我们想把书名这一列 固定下来,在滚动水平条的时候固定不动,先要设置一个列标记,点菜单 视图->设置列标记 ,见下图。
在出现的设置列标记对话框中,我们勾上第一行,并设置值为41,41是书名的结束列。如下图。
设好后,点”确定”,可以看到在41列的地方多了一条竖线,这个时候再点菜单 视图->不滚动标记1左侧 ,这样41列前的内容在水平条滚动的时候不会变,可以把后面的内容滚到前面来,见下图。
语法加亮
语法加亮是UltraEdit 的一个突出亮点,它能像各种语言的IDE开发环境一样,对各种语法的关键字着色。UltraEdit 通过一个叫wordfile的文件来定义各种语言的着色规则。通过添加语法规则即可增加UltraEdit 的识别能力。
默认安装后的UltraEdit 不支持Oracle的SQL语法着色,下面举例如何让UltraEdit 识别Oracle的SQL脚本并对关键字着色。
首先打开wordfile定义文件,点菜单 高级->配置 ,在左侧找到”语法加亮”,点右边的”打开”按钮即可打开wordfile文件。
到官方网站下载Oracle的语法定义文件,官方提供了上百种语法的定义文件,可以根据需要下载,路径为http://www.ultraedit .com/downloads/extras.html#wordfiles 。
把下载回来的文件粘在wordfile的结尾保存一下就行了。如下图
但这里要注意一下,下回来内容的开头有一个/L后面有个数字,这个数据需要根据自己的情况改变一下。这是一个编号,不能和wordfile已有的编号重复,并且不能大于20。您可以通过以下方法确定这个编号,点一下工具栏上的”查看方式”按钮,
然后弹出下图的菜单,红色框内语言15到语言20都是目前系统没有用到的编号,因此在这里我们可以把这个编号改成15。
保存后,当我们再次打开Oracle的SQL脚本的时候,语法中的关键字已经会自动着色了。
结束
UltraEdit 还有很多功能这里不再一一讲述,希望上面讲到的功能给您的工作带来便利。
发表评论
-
java访问apache server
2011-11-04 10:11 1421URL connUrl = new U ... -
一、TCP/IP 协议介绍-转
2011-06-16 20:00 1885一、TCP/IP 协议介绍 ... -
正则表达式
2011-04-14 20:33 1004(touch|wap20|wap10)(\s*)=(\s*)& ... -
正则表达式
2011-04-14 20:33 1068(touch|wap20|wap10)(\s*)=(\s*)& ... -
验证码打击外挂
2010-09-19 11:08 14721.下载图片验证码 a.恶意用户不停的拉验证码图片,等待验证 ... -
NIO实现的几种模型
2010-09-17 09:40 16901.单个长连接模型 客户端(读异步,写同步) 服务端(读异 ... -
技术语录
2010-09-10 20:29 1183tcp连接池:一定要让连接池自己创建连接,而不是让业务去创建连 ... -
jvm监控分析总结与分析
2010-07-21 20:32 10598参考文献: http://www.51testing.com ... -
VMware记录
2010-06-12 17:46 11071.桥接就是直接模拟一台pc和本机对等,nat就是通过本机代理 ... -
IT名词术语总汇
2010-04-02 18:14 1507正向控制 子类调用父类,晚辈调用长辈,这中调用方 ... -
MyEclipse搭建环境遇到的问题汇总
2010-04-02 15:57 11151.jar包中的源代码字体乱码 window/prefere ... -
java GC
2009-07-02 22:36 19561,out of memory 只发生在jv ... -
ArrayList遍历的同时删除
2009-06-06 01:05 30378方法一 ArrayList<String> l ... -
[导入]并发程序设计需要掌握的知识点
2009-05-31 18:11 1705转载地址:http://www.blogjav ... -
CAS与乐观锁思想来解决并发问题
2009-05-15 00:08 1597CAS(compare and set)留个标题,是个思考的方 ... -
Eclipse快捷键-方便查找
2009-01-14 14:58 115747【Ct rl+T】 搜索当 ... -
读风云bolg后,随便记录
2008-10-19 02:30 1092你需要面向对象吗?你需要 GC 吗?你需要所有的类都有一个共同 ... -
Element与Node区别
2008-08-09 13:01 3886<url-mapping url="chan ... -
UDP和TCP的选择
2008-08-06 15:13 2599一直在思考一个我问题,http协议为什么用TCP而不用UDP。 ... -
Java生成UUID
2007-09-28 01:51 59028UUID(Universally Unique Iden ...
相关推荐
UltraEdit教程 chm VB NET面向对象的实现 chm vbapi函数手册 chm vbscript语言参考 chm vbscript速查手册 chm VBSCRIP语言参考 CHM VC++ 编程指南 chm vc新手学堂 chm VMware Workstation 帮助 chm WebCompiler2000...
初级,修改程序,用ultraedit修改exe文件,称暴力破解,简称爆破 中级,追出软件的注册码 高级,写出注册机
7. **脚本编程**:高级用户还可以利用内置的脚本语言编写自定义的插件和脚本,实现自动化处理和分析。 在实际应用中,16进制文件修改工具常用于软件调试、逆向工程、数据恢复、安全分析等多种场景。例如,在软件...
本教程将深入探讨如何使用PyQt中的QTextEdit组件来实现一个具备多种功能的文本编辑器,包括保存、另存、打印、新建、打开、退出保存、查找、撤销、删除、复制、全选、自动换行、改变字体、放大、缩小等功能。...
PNEdit是一款文本编辑器,它支持多窗口编辑,具有强大的编辑功能以及丰富的用户界面布局。...它不仅具备基本的文本编辑功能,还提供了丰富的高级编辑和搜索工具,能够满足专业程序员和普通用户的多样化需求。
初级,修改程序,用ultraedit等工具修改exe文件,称暴力破解,简称爆破 中级,追出软件的注册码 高级,写出注册机 先说这爆破。所谓爆破,就是指通过修改可执行文件的源文件,来达到相应的目的。你不明白?呵呵,举个...
1.2.5UltraEdit的使用11 1.3一个简单的Java应用程序14 1.4一个简单的Java小程序16 1.5本章小结18 第2章Java语言基础19 2.1Java语言的特点19 2.2Java程序的构成21 2.3数据类 型23 2.3.1基本数据类型23 2.3.2...
高级,开具注册机 2.经常使用破解东西 (1)侦壳东西:PEiD (2)消息联合的OllyDbg引领破解东西的新潮水 一,此刻咱们起首来进修下破解的开端,爆破~ 1.侦壳 要破解1个软体起主要做的就是...
这个开关影响到高级搜索、会员在线聊天、征婚大厅等列表。一般设置为4即可,除管理员之外都可以显示。 、考题答案个数,即用户提交测试题及发送给用户测试的答案个数 、群组等级默认人数,这个可以从等级组...