Board logo

标题: [文本处理] 【已解决】BAT:多列数据逐行两两组合 [打印本页]

作者: 思想之翼    时间: 2014-4-5 22:07     标题: 【已解决】BAT:多列数据逐行两两组合

本帖最后由 思想之翼 于 2014-4-7 13:37 编辑

数据格式相同的100个txt文本,每个文本有21列数据,文本命名为1.txt  2.txt ... 100.txt 。

现在欲将每个文本内的各列数据逐行两两组合(例如A,B,C,D,E列,组合成AB, AC, AD, AE, BC, BD, BE, CD, CE, DE),并写入新建文本new1.txt  new2.txt ... new100.txt   这样的BAT如何写?恳望得到帮助!

例如
txt文本数据格式:
7 7 6 1 4 2 0 9 4 7 5 9 4 7 5 3 6 4 1 9 2
0 0 0 4 2 8 8 8 2 0 6 6 0 8 6 0 8 0 8 2 0
5 6 9 2 4 9 7 0 3 5 0 1 4 6 1 7 9 4 2 7 9
1 4 4 0 3 0 3 3 9 2 9 6 2 5 2 2 5 2 1 8 1
5 8 0 1 3 0 1 3 4 6 3 6 7 9 6 9 1 8 2 9 1
1 2 3 5 8 4 9 0 2 5 1 1 3 6 2 4 7 3 9 5 8

各列数据逐行两两组合:
77 76 71 74...92
00 00 00 04...20
56 59 52 54...79
14 14 10 13...81
58 50 51 53...91
12 13 15 18...58
作者: xxpinqz    时间: 2014-4-6 12:46

  1. @echo off&setlocal enabledelayedexpansion
  2. for /l %%i in (1,1,100) do (
  3.   (for /f "delims=" %%a in (%%i.txt) do (
  4.     set "str=%%a"
  5.     for %%b in (%%a) do (
  6.         set "str=!str:*%%b=!"
  7.         for %%c in (!str!) do set/p"=%%b%%c "
  8.     )
  9.     echo,
  10.   ))<nul>组合%%i.txt
  11. )
复制代码





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