pusofalse 当前离线
荣誉版主
wide find and replace Ver 2.3.1.120 by BaiYang / 2004 - 2007, 免费软件 主页地址 - http://baiy.cn =============================================================================== 在文件或管道中批量搜索-替换字符串——支持多字符集编码 用法: wfr [文件通配符1 文件通配符2 ...] {查找选项:查找内容} {替换选项:替换为} [其它选项] =============================================================================== 查找选项: -f: - 匹配精确串 -fic: - 匹配精确串(忽略大小写) -r: - 正则表达式匹配 -ric: - 正则表达式匹配(忽略大小写) -rnnl: - 跨行正则匹配 -rnnlic: - 跨行正则匹配(忽略大小写) -any - 匹配文件或管道中的所有内容,主要用于完成单纯的批量字符集编码转换 =============================================================================== 替换选项: -t: - 将匹配的内容替换为指定字符串 -tu: - 先将指定的“替换为”字符串变为大写,然后开始替换 -tl: - 先将指定的“替换为”字符串变为小写,然后开始替换 -h -? - 当前屏幕 注意: 如果您正在使用正则匹配,那么您可以在“替换为”字符串中使用子表达式代换 (\0 ~ \9) =============================================================================== 字符编码选项: -encin: - 指定输入文本(文件或管道)的字符集编码。 默认值: 使用当前操作系统的默认代码页。 -encout: - 指定输出(结果)文本的字符集编码。 默认值: 与 "-encin" 指定的值相同。 -encarg: - 指定搜索和替换选项的内容使用何种字符集编码。 默认值: 使用当前操作系统的默认代码页。 -unisign - 如果输出指定为 UNICODE 宽字符编码 (如: UCS-2, UTF-8/16 等), 则在文 件头部加入 BOM 签名,这样支持 unicode 的文本编辑器将会自动识别该文 件的编码格式。 -listenc - 列出所有 wfr 支持的字符集编码。 -listcmp - 列出 wfr 认可的键入字符集编码转换规则表。 -force - 强制实施转换,忽略编码兼容性规则。 =============================================================================== 其它选项: -s - 包含子目录 -exp - 启用内存扩展算法,将会加倍 fr 的内存使用量,但是很多时候可以极大地 提高执行效率。如果你碰到了性能问题,可以尝试开启该选项。 -stdin - 从标准输入设备获得要查找的内容,并将结果从到标准输出设备(如果未指 定任何文件模板的话,则自动启用该选项) -stdout - 像平时一样, 从文件中获得输入, 但将结果送到标准输出(而不是写回文 件) -frc - 显示每个文件内发生的替换次数 -trc - 显示所有文件总共发生的替换次数 =============================================================================== POSIX 和 Perl 风格的正则表达式: - "find - replace" 完整支持 POSIX.2 扩展标准及 Perl 风格的正则表达式。 以下是支持的字符类及其对应关系: POSIX perl 描述 -------------------------------------------------------------------- [:alnum:] 字母和数字 [:alpha:] \a 字母 [:lower:] \l 小写字母 [:upper:] \u 大写字母 [:blank:] 空格和制表符 [:space:] \s 空白字符 [:cntrl:] 控制字符 [:digit:] \d 十进制数字 [:xdigit:] \x 十六进制数字 [:graph:] 可打印字符(不包括空白符) [:print:] \p 可打印字符(包括空白符) [:punct:] 标点符号 - 以下是一些 perl 的特殊字符类: perl POSIX等效 描述 -------------------------------------------------------------------- \o [0-7] 八进制数字 \O [^0-7] 非八进制数字 \w [[:alnum:]_] 单词组成 \W [^[:alnum:]_] 非单词组成 \A [^[:alpha:]] 非字母 \L [^[:lower:]] 非小写字母 \U [^[:upper:]] 非大写字母 \S [^[:space:]] 非空白符 \D [^[:digit:]] 非十进制数字 \X [^[:xdigit:]] 非十六进制数字 \P [^[:print:]] 非可打印字符 \< [^[:alpha:]_] 单词开始 \> [^[:alnum:]_] 单词结束 - 注意: posix 字符类是必须工作在集合中的(“[”和“]”内)。相反,perl 风格 的字符类是工作在集合运算之外的。 - 此外,为了便于在命令行输入一些特殊字符,特别定义了一下别名: perl风格 POSIX风格 描述 ----------------------------------------------------------------------- \" [:dq:] 双引号 \' [:sq:] 单引号 \t [:tb:] 制表符 \n [:nl:] 换行符 (0x0A) \r [:rt:] 回车符 (0x0D) \b [:bs:] 退格符 =============================================================================== 开关的前缀和后缀: * 所有命令行开关(选项)都是大小写无关的(如: "-fic:" 和 "-FIC:") * 开关的前缀可以是 "-" 或 "/"(如: "/s" 和 "-s") * 开关的后缀可以是 ":" 或 "="(如: "/f:", "/f=", "-f:" 和 "-f=" 等效) =============================================================================== 应用示例: wfr *.txt *.htm -f:teh -t:the wfr *.txt -fic:"My Dir" -tu:"%ROOTDIR%" type server.log | wfr /r:"Connected.*218.79" /t:"**Attack** \0" type server.log | wfr /r:"^(Smith|James).*\n" /t unzip -l *.zip | wfr /r:"^(.{22}:\d\d\s*|(A| \a| -|.*files$).*\n)" /t wfr *.txt /s /any /encin:gbk /encout:utf-8 wfr *.log /any /encin:ucs-2 /encout:gbk /stdout | OtherApp.exe ... wfr *.txt *.htm -r:"张(\a+/>)" -t:"李\1" wfr *.txt *.htm -r:"[你我他她它]们" -t:"朋友们"复制代码
评分人数
amhoho 当前离线
二级士官
TOP
心愿怕人 当前离线
三级士官
llddyy 当前离线
easy2003 当前离线
一级士官
couth 当前离线
lvrendos 当前离线
Bluezhao 当前离线
songzan 当前离线
xslxslxsl 当前离线
五级士官
yashuer 当前离线
列兵
qlewa 当前离线
上等兵
hzcxdgioa (妮昵)当前离线
中尉
lyfwcn 当前离线