网站大量收购独家精品文档,联系QQ:2885784924

Wfr命令详解讲解.doc

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Wfr命令详解讲解

简介 wfr?   - 支持多国语言的字符串批量查找和替换   - 批量字符集编码转换 纯 unicode 规则匹配内核,真正支持各国语言文字的正则匹配。 带有兼容性检查的字符集编码转换功能。同时支持 libiconv(iconv.dll) 、IBM libicu 和 Windows 自带的字符集编码转换 API。 支持 TCL 8.2 兼容的高级正则表达式(ARE)。 支持一次性指定多个文件通配符和文件列表。 支持管道模式,与其它命令协同工作;支持半管道模式,从文件中获取输入,但将结果写到标准输出。 支持包含子目录。 支持普通匹配、正则匹配、可忽略大小写、可跨行匹配。替换时可以使用正则的子表达式。 同时支持 posix 标准的扩展正则表达式及 perl 风格的正则匹配。 可以格式化替换内容为全大写或全小写,便于在批处理中对环境变量和命令行参数做大小写一致化处理。 支持 DOS(Windows)、Macintosh 和 unix 风格的换行符,可选择自动识别(默认)或手动指定。 统计功能,列出每个文件中的替换次数、总替换次数等。 支持 Win32 和纯 DOS 环境(纯DOS环境中需要 HX DOS Extender 支持)。 支持 POSIX 环境,提供 linux x86/x64、FreeBSD、NetBSD、Solaris 等版本下载。   更新历史 2013-11-19, Ver 2.3.9-1119 UPD: 在 -s 模式下,默认忽略无法访问的子文件夹。 2009-12-13, Ver 213 NEW: 新增 -errstop 参数。使用此参数时,遇到无法访问的文件和子目录会报错并自动终止查找。不使用此参数时,fr 会自动跳过无法访问的子目录。对于无法读写的文件,fr 会输出一行报错信息,但不会终止搜索。 2009-03-12, Ver 312 FIX: 修正了在使用 /r 或 /ric 参数并且使用 ARE p 和 s 模式进行匹配时,^ 有时仍然会匹配行首的问题。 ???? 例如:在 dos 格式的文件中,/r:***:(?p)(^.*)\n 会匹配所有行,而不仅仅是文件的第一行。 UPD: 现在 -exp 默认为开启状态,要禁用此选项,需要指定 -noexp 开关。 2008-09-09, Ver 909 UPD: 增强了正则行首锚点 ^ 的适应性。 2008-09-08, Ver 908 FIX: 纠正了正则表达式零长匹配时会出现无限循环的问题(例如,在内容“aaa.bbb”中将“[^.]*”替换为“z”)。 FIX: 纠正了正则行首锚点解析不正确的问题(例如,在内容“ccc”将“^c”替换为“z”)。 2008-08-16, Ver 15 新增高级正则表达式(ARE)支持 2007-01-20, Ver 20 新增 -exp 选项,开启该选项后,程序的内存使用量将增加一倍,但是在很多情况下,其处理速度将得到极大改善。碰到性能问题的弟兄们可以试试。 该算法使用额外的内存消除了原地替换时带来的内存抖动,所以文件中要替换的值越多,算法带来的性能提升就越明显。在 siwen@CCF 兄提供给我的样本上测试,开启了 -exp 选项以后,fr 完成任务的时间从 1小时 降低到 1.5 秒(文件体积 8.5MB,文件中需要替换的项目为 25 万项)。   所谓 Unicode 正则匹配 wfr 内部使用完全基于 UNICODE 的高效正则引擎,能够完成各种国际化条件的正则匹配。 以下举例说明: 小写类能够正确匹配各国小写字母。如:中文全角字母“abcd”;希腊字母“α、β、ω”;俄文字母“ж、я、щ” 等等。 大写类能够匹配各国大写字母。如:全角字母“ABCD”;希腊字母“Α、Β、Ω”;俄文字母“Ж、Я、Щ”等等。 字符类能匹配各国字母(中日韩的汉字也属于该类)。 标点类能够匹配各国标点符号,如:“、,。……『』”等等。 所有操作都支持宽字符,例如,表达式:“[我你他她它]们”将被正确处理。 其它(数字、空白符、词边界等等)以此类推,全方位支持多语言。以上字符分类的规则遵循UNICODE标准分类(UNICODE General Category Values)具体请参考:/versions/Unicode4.0.0/ch04.pdf。 关于 UNICODE 正则的操作效率,这个引擎比我能找到的所有开源的非 UNICODE 匹配引擎至少快一倍左右(因为所有字符类的匹配都是直接查表映射的,都是标准 O(1) 算法)。 不过这只是匹配引擎的效率,由于所有文件在“匹配-替换”前后都要做一次编码转换,所以典型应用下,wfr 效率比 fr 低一些。wfr 并不是 fr 的升级版,能够

文档评论(0)

4477704 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档