Replace Pioneer批量替换文件名?

#<file_line('d:\\3.txt',$match,'',0,'nametext')>.${EXT}我在网上看到这个命令,这条命令大概意思为:TXT文本文件逐行... #<file_line('d:\\3.txt',$match,'',0,'nametext')>.${EXT}

我在网上看到这个命令,这条命令大概意思为:TXT文本文件逐行填写好文件名字,然后从写好的TXT文件逐行提取内容批量重命名到文件。但这会把原文件名删掉了,如何把原文件名和从TXT文件从提到的内容合并为新文件名?菜鸟救助!望大神解答。
展开
 我来答
路斩118
2014-09-15 · TA获得超过105个赞
知道答主
回答量:117
采纳率:33%
帮助的人:58.2万
展开全部
问题1-3的步骤:
1. 打开Tools->Batch Runner菜单
2. 把待处理文件从Windows文件管理器拖拽到Batch Runner窗口中
3. 点击Fast Replace打开Fast replace窗口
* 点击Clear清除全部内容,点击Add按钮,在Search输入搜索内容,在Replace输入替换内容(不带双引号):
问题1: Search="(\n|^)([ \t]*\n)+",Replace="$1"
问题2:Search="(^([^\n]*\n){m-1})[^\n]*\n",Replace="$1"
问题3:Search="(^([^\n]*\n){m-1})([^\n]*\n){n-m+1}",Replace="$1"
注意:
*regular exp选项要选中
*要把上面的m-1和n-m+1实际算出来添上,比如m=3,n=10,那么用2替换m-1,用8替换n-m+1
* 点击ok
* 点击Start即可。

问题4:
1. 打开Tools->Batch Runner菜单
2. 把待处理文件从Windows文件管理器拖拽到Batch Runner窗口中
3. 选中Set output filename选项,把后面的
${FILENAME}改为:
${FILENAME}{file_line,m}.${EXT}

${FILENAME}{file_line,m}
注意用实际的数代替m
4. 点击File Rename即可。

另外注意问题1中你说的^\s*$不好使,可能是你在后面误输入了一个回车。

* 以上问题都经过测试,如果替换不成功请首先检查各字符串的行尾是否多加了一个换行。
yes___no
2014-09-16 · TA获得超过3153个赞
知道大有可为答主
回答量:1988
采纳率:100%
帮助的人:2067万
展开全部
很简单,只要在前面保留原文件名即可:
${BASE}_#<file_line('d:\\3.txt',$match,'',0,'nametext')>.${EXT}
追问
谢谢!但出来的文件名,我试过来了,会把后缀修改掉,变成无法识别的文件。同时文件名字符数统计一下,只有132个字符,但文件名在win7系统下最大长度为260字符(即:路径+文件夹名+文件名,不能超过260,如:D:\111...22\1111...111.txt)难道这是软件Replace Pioneer本身的限制?能不能超过200字符以上?
追答
经测试,文件全路径可以达到259个字符,而且公式后面的.${EXT}就表示后缀名,是不是你的文件名是汉字的没个字占两个字节,所以只有132个,太长了把后面的后缀名都挤掉了。
不过我试了,如果文件名过长(超过260个),会给出错误提示,不会替换成功。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式