Board logo

标题: [文本处理] 批处理如何提取文本中每一行里的特定内容并分别输出到以递增数字命名的文本里 [打印本页]

作者: comkom1    时间: 2016-12-22 20:55     标题: 批处理如何提取文本中每一行里的特定内容并分别输出到以递增数字命名的文本里

本帖最后由 pcl_test 于 2016-12-23 02:19 编辑

原件文本每行1个例

86,116,-34,-88
100,110,-46,-88
82,107,-29,-88
77,109,-23,-87
77,106,-24,-88

实现,逐个提取,每行的  -坐标1 -坐标2
到00000.txt 里面格式如下  参考原文本内容
-34
-88

00001.txt
-46
-88

00002.txt
-29
-88

实现这样的存储方式。
求大神一解迷惑。
望大神新年快乐,恭喜发财。
作者: comkom1    时间: 2016-12-22 21:06

楼下万年吉祥,
作者: Nsqs    时间: 2016-12-22 22:13

本帖最后由 Nsqs 于 2016-12-22 22:14 编辑

你的提问不详细
问题1:你的00001..00002是怎么来的?意思是叫我们猜?还是读取文件夹下多个文件对应文件名提取?这样的问题不详细
问题2:坐标1坐标2是指的只提取第3、4列还是有一定规律?你需要表述清楚?还需要别人教你如何提问还要给你写代码,亲爹啊?
作者: /zhqsystem/zhq    时间: 2016-12-22 23:53

回复 1# comkom1
  1. for /f "delims=" %%i in ('type "%~f1"')do (set "loop=%%i"&&set/a "n+=1"&&set "new_n=!n!"
  2. for /l %%n in (1,1,20)do set "new_n=0!new_n!"
  3. for /l %%n in (1,1,55)do (
  4.   for /f "tokens=1,* delims=," %%y in ("!loop!")do (set "new=%%y"&&set "loop=%%z"
  5.    if "!new:~0,1!"=="-" (
  6.     (echo,%%y)
  7.     echo,"%~dp1!new_n:~-5!.txt"
  8.    )
  9.   )
  10. )
  11. )
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2