中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]截取特定内容然后替换
« [1] [2] »
作者:
标题: [求助]截取特定内容然后替换 上一主题 | 下一主题
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 16 楼』:  

有楼上这位英雄代码就够了




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2009-4-19 02:23
查看资料  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 17 楼』:  

英雄可不敢当,我只是对JS正则表达式有所了解而已~~

2009-4-19 02:31
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
w1314ich
中级用户





积分 234
发帖 119
注册 2007-4-22
状态 离线
『第 18 楼』:  

$js$.js(13, 121) Microsoft JScript 编译错误: 未结束的字符串常量,程序运行不了

还有能不能不生成新的文件,直接把原文件改掉就可以了

麻烦freeants001了



word
2009-4-19 03:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 19 楼』:  

这样就可以了直接覆盖,别忘了备份
@echo off
more +4 "%~f0">$js$.js
cscript /nologo $js$.js "%~f1"
goto:eof
file_sour=WScript.arguments(0);
//file_dest=file_sour+"_处理后.htm";
s1=
'\r\n<!--  JavaScript专用链代码 -->\r\n'+
'<script src="http://pstatic.xunlei.com/js/webThunderDetect.js"></script>\r\n'+
'<script src="http://pstatic.xunlei.com/js/base64.js"></script>\r\n'+
'<script language="javascript">\r\n'+
'    var thunder_url = \"' ;
s2=
'\";\r\n'+
'    var thunder_pid = "12839";\r\n'+
'    var restitle = "";\r\n'+
'    document.write(\'<a href="#" thunderHref="\' + ThunderEncode(thunder_url) + \'" thunderPid="\' + thunder_pid + \'"

thunderResTitle="\' + restitle + \'" onClick="return OnDownloadClick_Simple(this,2,4)" oncontextmenu="ThunderNetwork_SetHref

(this)">';
s3=
'</a> \');\r\n'+
'</script>\r\n';
fso=WScript.createobject("scripting.filesystemobject");
sss=fso.opentextfile(file_sour,1,0,-2).readall();
//fl=fso.createtextfile(file_dest,1,-1);
re=/((?:http|https|ftp|mms|rtsp):\/\/(?:&(?=amp;)|[A-Z0-9\.\/=\?%_~@#:;\+\- \u4E00-\u9FA5]){1,250}\/([^\/]+?\.(?:exe|rar|zip)))/gi;
ostr=sss.replace(re,s1+"$1"+s2+"$2"+s3);
try{
    fl=fso.createtextfile(file_sour,1,0)
    fl.write(ostr);
}catch(err){
    fl.close();
//    WScript.echo("now unicode");
    fso.createtextfile(file_sour,1,-1).write(ostr);
}


2009-4-19 03:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
w1314ich
中级用户





积分 234
发帖 119
注册 2007-4-22
状态 离线
『第 20 楼』:  

还是显示 $js$.js(13, 121) Microsoft JScript 编译错误: 未结束的字符串常量
修改不了



word
2009-4-19 04:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 21 楼』:  


@echo off
more +4 "%~f0">$js$.js
cscript /nologo $js$.js "%~f1"
goto:eof
file_sour=WScript.arguments(0);
s1=
'\r\n<!--  JavaScript专用链代码 -->\r\n'+
'<script src="http://pstatic.xunlei.com/js/webThunderDetect.js"></script>\r\n'+
'<script src="http://pstatic.xunlei.com/js/base64.js"></script>\r\n'+
'<script language="javascript">\r\n'+
'    var thunder_url = \"' ;
s2=
'\";\r\n'+
'    var thunder_pid = "12839";\r\n'+
'    var restitle = "";\r\n'+
'    document.write(\'<a href="#" thunderHref="\' + ThunderEncode(thunder_url) + \'" thunderPid="\' + thunder_pid + \'" thunderResTitle="\' + restitle + \'" onClick="return OnDownloadClick_Simple(this,2,4)" oncontextmenu="ThunderNetwork_SetHref(this)">';
s3=
'</a> \');\r\n'+
'</script>\r\n';
fso=WScript.createobject("scripting.filesystemobject");
sss=fso.opentextfile(file_sour,1,0,-2).readall();
re=/((?:http|https|ftp|mms|rtsp):\/\/(?:&(?=amp;)|[A-Z0-9\.\/=\?%_~@#:;\+\- \u4E00-\u9FA5]){1,250}\/([^\/]+?\.(?:exe|rar|zip)))/gi;
ostr=sss.replace(re,s1+"$1"+s2+"$2"+s3);
try{
    fl=fso.createtextfile(file_sour,1,0)
    fl.write(ostr);
}catch(err){
    fl.close();
    WScript.echo("now unicode");
    fso.createtextfile(file_sour,1,-1).write(ostr);
}


2009-4-19 04:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
w1314ich
中级用户





积分 234
发帖 119
注册 2007-4-22
状态 离线
『第 22 楼』:  

还是不太好用,输入 js.bat *.html处理一批文件的时候,只能处理一个文件,其他全部没有变化,感觉FR代码写的简单些,大哥们能不能改进一下那个使用FR的批处理,使他像 freeants001写的那行代码
re=/((?:http|https|ftp|mms|rtsp):\/\/(?:&(?=amp;)|[A-Z0-9\.\/=\?%_~@#:;\+\- \u4E00-\u9FA5]){1,250}\/([^\/]+?\.(?:exe|rar|zip|rmvb)))/gi;
使前缀和后缀可以排列组合处理各类下载地址,前缀后缀可以自己加,比如以下多了视频文件AVI,RMVB,或者其他可以自己加进去,然后再使那个FR的自动以文件名命名下载地址的名称,辛苦 freeants001,yishanju啦



word
2009-4-19 05:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 23 楼』:  

for /r . %%i in (*.html) do js.bat %%i

2009-4-19 05:12
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
w1314ich
中级用户





积分 234
发帖 119
注册 2007-4-22
状态 离线
『第 24 楼』:  

还是不能批量处理,只能处理一个
而且对这样一类下载地址处理不了
ftp://teach:teach1@teach.enet.com.cn:21/教程.[DREMWEAVER.8.0]/[中国硅谷www.enet.com.cn].DREAMWEAVER.[flash.教程下载].rmvb
我已经在批处理内加入了rmvb的类型



word
2009-4-19 05:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 25 楼』:  



  Quote:
Originally posted by w1314ich at 2009-4-18 02:18:
文件的类型只有exe,rar,zip这三种

~~~~~

2009-4-19 05:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
w1314ich
中级用户





积分 234
发帖 119
注册 2007-4-22
状态 离线
『第 26 楼』:  

呵呵 我想以后可能会加其他类型,能不能在帮着改下,现在还是不能批量处理



word
2009-4-19 05:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeants001
中级用户




积分 330
发帖 244
注册 2006-4-14
来自 湖北
状态 离线
『第 27 楼』:  

复制保存为批文件,在你要处理的目录中运行
@echo off
more +6 "%~f0">$js$.js
for /f "delims=" %%i in ('dir/a/b *.htm?') do (
@echo 转换:"%%~nxi"
@cscript //nologo $js$.js "%%~fi")
del $js$.js&pause&goto:eof
file_sour=WScript.arguments(0);
s1=
'\r\n<!--  JavaScript专用链代码 -->\r\n'+
'<script src="http://pstatic.xunlei.com/js/webThunderDetect.js"></script>\r\n'+
'<script src="http://pstatic.xunlei.com/js/base64.js"></script>\r\n'+
'<script language="javascript">\r\n'+
'    var thunder_url = \"' ;
s2=
'\";\r\n'+
'    var thunder_pid = "12839";\r\n'+
'    var restitle = "";\r\n'+
'    document.write(\'<a href="#" thunderHref="\' + ThunderEncode(thunder_url) + \'" thunderPid="\' + thunder_pid + \'" thunderResTitle="\' + restitle + \'" onClick="return OnDownloadClick_Simple(this,2,4)" oncontextmenu="ThunderNetwork_SetHref(this)">';
s3=
'</a> \');\r\n'+
'</script>\r\n';
fso=WScript.createobject("scripting.filesystemobject");
sss=fso.opentextfile(file_sour,1,0,-2).readall();
re=/((?:http|https|ftp|mms|rtsp):\/\/(?:&(?=amp;)|[A-Z0-9\.\/=\?%_~@#:;\+\- \u4E00-\u9FA5]){1,250}\/([^\/]+?\.(?:exe|rar|zip|rmvb|rm)))/gi;
ostr=sss.replace(re,s1+"$1"+s2+"$2"+s3);
try{
    fl=fso.createtextfile(file_sour,1,0)
    fl.write(ostr);
}catch(err){
    fl.close();
    fso.createtextfile(file_sour,1,-1).write(ostr);
}
[ Last edited by freeants001 on 2009-4-19 at 06:48 ]

2009-4-19 06:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: