[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 pcl_test 于 2016-9-30 12:53 编辑

1、不需要贴不能满足你需求的代码
2、优先文字说明,能用文字说明清楚的勿发图片
3、上传的附件需压缩打包
4、对应关系没有明确说明

TOP

  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1,2 delims=-" %%a in ('type "截取号码段.txt"') do (
  3.     set "a=%%a"&set "b=%%b"
  4.     set "name=!a:~,4!"
  5.     if not defined #!name! set "#!name!=1"
  6.     for /l %%c in (1!a:~4^,7! 1 1!b:~4^,7!) do set "_!name!%%c=1"
  7. )
  8. for /f "tokens=1 delims=#=" %%a in ('set #') do (
  9.     for /f "delims=" %%i in ('type "%%a.txt"') do (
  10.         set "c=%%i"
  11.         for %%k in (!c:~4^,7!) do if defined _%%a1%%k echo;%%i
  12.     )
  13. )
  14. pause
复制代码

TOP

回复 4# winbat

cmd窗口没输出,还是没有输出到txt文本,还是什么都没输出?如果是没有输出到txt文本,自行添加

TOP

本帖最后由 pcl_test 于 2016-9-30 14:57 编辑

回复 7# winbat

cmd窗口的输出结果呢?你确定你添加对了?
http://www.bathome.net/thread-2516-1-1.html

5楼11行
for %%k in (!c:~4^,7!) do if defined _%%a1%%k >>"学学基础知识.txt" echo;%%i

TOP

回复 9# winbat

不要重复贴码
把顶楼的除了result.txt之外的所有txt文件跟bat文件放一起运行

TOP

回复 11# winbat

不改5楼的代码直接运行显示什么

TOP

本帖最后由 pcl_test 于 2016-9-30 16:02 编辑

回复 13# winbat
  1. @echo off&setlocal enabledelayedexpansion
  2. if not exist "截取号码段.txt" echo;not exist
  3. for /f "tokens=1,2 delims=-" %%a in ('type "截取号码段.txt"') do (
  4.     set "a=%%a"&set "b=%%b"
  5.     set "name=!a:~,4!"
  6.     if not defined #!name! (
  7.         set "#!name!=1"
  8.         if not exist "!name!.txt" echo;!name! not exist
  9.     )
  10.     for /l %%c in (1!a:~4^,7! 1 1!b:~4^,7!) do set "_!name!%%c=1"
  11. )
  12. set #
  13. pause
复制代码
这样呢,显示什么

TOP

回复 15# winbat

核对下代码,不改5楼的代码直接运行只显示“请按任意键继续. . . ”么?

TOP

本帖最后由 pcl_test 于 2016-12-1 19:34 编辑

回复 17# winbat
  1. //&cls&cd /d "%~dp0"&cscript -nologo -e:jscript "%~f0"&pause&exit
  2. var fso = new ActiveXObject('Scripting.FileSystemObject');
  3. var file = '截取号码段.txt';
  4. var s = '', files={}, list={};
  5. if(!fso.FileExists(file))WSH.Echo(file+'不存在');
  6. var text = fso.OpenTextFile(file, 1).ReadAll().split(/[\r\n]/);
  7. for(var i=0; i<text.length; i++){
  8.     var name = text[i].slice(0,4);
  9.     if(!files[name])files[name]=1;
  10.     text[i].replace(/\d{4}(\d{7})\d{2}-\d{4}(\d{7})\d{2}/, function(a,b,c){
  11.         for(var j=Number(1+''+b);j<=Number(1+''+c);j++){
  12.             list[name+(''+j).slice(1)]=j
  13.         }
  14.     })
  15. }
  16. for(var f in files){
  17.     if(!fso.FileExists(f+'.txt')){
  18.         WSH.Echo(f+'.txt不存在')
  19.     }else{
  20.         try{
  21.             var ftext = fso.OpenTextFile(f+'.txt', 1).ReadAll().split(/[\r\n]/);
  22.             for(var i=0; i<ftext.length; i++){
  23.                 var str = ftext[i].replace(/^\s*|\s*$/g,'');
  24.                 if(!/^\d{13}$/.test(str))WSH.Echo(f+'.txt:第'+(i+1)+'行['+str+']含有非数字字符或长度不为13位');
  25.                 if(list[str.slice(0,11)])s+=str+'\r\n';
  26.             }
  27.         }catch(e){WSH.Echo(f+'.txt为空文件')}
  28.     }
  29. }
  30. fso.CreateTextFile('结果.txt', 2).Write(s);
复制代码
这样呢,显示什么

TOP

本帖最后由 pcl_test 于 2016-10-1 12:41 编辑

回复 21# winbat

嗯,我以你顶楼给出的样本测试没有问题,自行找原因或者把QQ私密我吧

TOP

返回列表