ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:49.51KB ,
资源ID:9834814      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9834814.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(最新UltraEdit编辑器使用技巧之内置JS脚本.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

最新UltraEdit编辑器使用技巧之内置JS脚本.docx

1、最新UltraEdit编辑器使用技巧之内置JS脚本UltraEdit编辑器使用技巧之内置JS脚本UltraEdit编辑器使用技巧内置JS脚本前言:我使用的UE版本是14.20,应该是现今较通用版本。恕其他版本无暇多予比对。之前一直用Editplus,因速度比拟快,功能也尚可,且以前版本的UE没什么独到之处,直到用了14.20,用了其强大的自定义功能,以及内置JS脚本而非过于弱智的宏,才彻底抛弃Editplus,转而研究UE,并彻底被其吸引一、脚本使用首先讲讲UE使用脚本的好处和根本原理:使用脚本相当于是把外置的一个程序引用到编辑器之中,作为它的一个可执行命令,就好似我们UE中编辑-删除-删除至

2、行尾;或者在word之中,可以选中一段内容-右键-选择格式相似的文本这个例子可能不恰当,因为这已经不是纯文本编辑,而是附带了格式的。但其本质是一样的。如果我们要使用自己特有的功能,而不是系统提供的呢?如果我要统计文本里面有多少个字符串TEST怎么做?我要统计只在行首显示的TEST怎么做?如果我不但要统计有多少个行首的TEST,还要把这些行都重新复制到一个新的文本,该怎么做?在数据量小的时候,可以手工操作,可如果这是一个50K的文本,估计一天之内,你就不用干别的了,如果是500K呢?!本质上来说脚本和宏的道理是一样的,只是宏靠的是录制,记录你一连串的操作,以便之后你再使用同样的操作的时候,可以仅

3、仅点击一下鼠标或者用个快捷键,就实现了之前的一连串操作。但是如果你没有确定的操作该怎么办呢?就好似刚刚说的“不单要统计有多少个行首的TEST,并且还要把这些行都重新复制到一个新的文本,这个操作到底该怎么录制,我还真说不清楚估计不录个十次八次的,谁都不知道自己的操作对不对。因此说,宏有它的局限性,不适于过于复杂的操作,当然宏本身也是可以编辑的,但是相对于脚本语言来说,晦涩难懂的宏语句绝对不是给人看的据说有“编辑器之神之称的Emacs就是靠它的内置脚本编辑方法,维护着绝对老大的地位。我无缘接触Emacs,幸好UE也终于有了这个功能,并且用的还是比我使用的例子数据如下:this is the tes

4、t data. #this is the test data. this is the test data. this is the test data. test this is the test data. test this is the test data. test this is the test data. test this is the test data. test this is the test data. test #this is the test data. test this is the test data. test this is the test dat

5、a. test this is the test data. test this is the test data. test this is the test data. test this is the test data. test this is the test data. this is the test data. this is the test data. #this is the test data. this is the test data. this is the test data. this is the test data. this is the test d

6、ata. this is the test data. this is the test data. this is the test data. this is the test data.二、程序举例1. 下面以刚刚的“如果我要统计文本里面有多少个字符串TEST怎么做?为例,讲解UE-JS。UltraEdit.activeDocument.top(); /把光标移至文本的最顶端var str_f = test; /要搜索的字符串var cnt1 = 0; /个数统计UltraEdit.activeDocument.findReplace.find(str_f); /查找字符串 str_fw

7、hile (UltraEdit.activeDocument.isFound() /如果找到要查询的字符串,那么执行下面程序 cnt1 = cnt1 + 1; UltraEdit.activeDocument.findReplace.find(str_f); /再一次查找UltraEdit.messageBox(共搜索到 + cnt1 + 个字符串); /弹出窗口显示结果以上程序相当于是用程序步骤模仿手工操作,并同时加上手动的计数。程序不会重新从头搜索,所以向下搜不到字符串的时候,就跳出循环,显示结果了。这个需求也有另一种方法来做全部通过标准的JS。此种方法不是很推荐,但本质上来说更加灵活,适

8、于JS方面比拟擅长者,在此我也写出来供大家参考。JS的function 我就不多做解释了,因为其很灵活,我只是随便用了一种。function count_str(text_all,str_f) var result = ; result = text_all.split(str_f); return result.length - 1;UltraEdit.activeDocument.selectAll(); /选择全部文本var text_all = UltraEdit.activeDocument.selection; /获取文本为字符串var str_f = test; /要搜索的字符串

9、var cnt1 =count_str(text_all,str_f); /调用函数 count_strUltraEdit.messageBox(共搜索到 + cnt1 + 个字符串); /弹出窗口显示结果2. 我们再看“我要统计只在行首显示的TEST怎么做?UltraEdit.activeDocument.top(); /把光标移至文本的最顶端UltraEdit.activeDocument.findReplace.regExp = true; /使用正那么表达式查找var str_f = test; /要搜索的字符串:行首的testvar cnt1 = 0; /个数统计UltraEdit.

10、activeDocument.findReplace.find(str_f); /查找字符串 str_fwhile (UltraEdit.activeDocument.isFound() /如果找到要查询的字符串,那么执行下面程序 cnt1 = cnt1 + 1; UltraEdit.activeDocument.findReplace.find(str_f); /再一次查找UltraEdit.messageBox(共搜索到 + cnt1 + 个字符串); /弹出窗口显示结果这个时侯就需要用到正那么表达式了,正那么表达式作为“非人类语言,本身值得重新讲一次,但是网上已经有很多相关的资料,本人的

11、水平也有限,就不再赘述了。各位可以自己去看看,UE本身也有正那么表达式的参考,仔细研究研究都能明白。闲话少说,看程序:同上面第一个程序,这个也可以全部通过标准的JS来做。不过在这里再写出来意义不大。不再重复。3. 我们最后再看看“如果我不单要统计有多少个行首的TEST,并且还要把这些行都重新复制到一个新的文本,该怎么做?这里不单要读,要匹配查询,还要写到其他的文件里,稍微要再多一个步骤。略有不同的地方是“UltraEdit.document0.write(line);这一句,表示把一个字符串写到一个文档里面,UltraEdit.document0 表示的是UE翻开窗口中的第一个窗口。请看程序:

12、UltraEdit.activeDocument.top(); /把光标移至文本的最顶端UltraEdit.activeDocument.findReplace.regExp = true; /使用正那么表达式查找var str_f = test; /要搜索的字符串:行首的testvar cnt1 = 0; /个数统计var line;UltraEdit.activeDocument.findReplace.find(str_f); /查找字符串 str_fwhile (UltraEdit.activeDocument.isFound() /如果找到要查询的字符串,那么执行下面程序 cnt1

13、= cnt1 + 1; UltraEdit.activeDocument.selectLine(); line = UltraEdit.activeDocument.selection; UltraEdit.document0.write(line); UltraEdit.activeDocument.findReplace.find(str_f); /再一次查找 附注:1.UE按名称排序,正常情况下,我会用一个日期命名的文件作为当日的临时文件,其他的都是字母命名,每次翻开当日临时文件都是排在第一个,也方便查找每天工作的文本记录。2.脚本使用帮助参见UE Help“入门-脚本命令。3.UE虽然支持脚本,但暂时还没有调试功能,这个很让人郁闷。暂时我也还没想到太好的方法,只能是靠经验了。4.正那么表达式问题,或许以后我会另写一篇,希望有人支持!

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1