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

[文本处理] 【已解决】两列数据,如何将第一列相同数据所对应的第二列数据进行合并?

本帖最后由 sweet惜缘 于 2016-1-10 20:22 编辑

http://pan.baidu.com/s/1nusspHv————Data.txt(由于上传限制,已上传至百度云)

Data.txt中内容如下:
DB00005        DB01281
DB00005        DB00026
DB00005        DB08879
DB00005        DB06168
DB00005        DB08904
DB00005        DB00531
DB00005        DB06643
DB00005        DB00065
DB00005        DB01097
DB00005        DB00108
DB00005        DB00337
DB00005        DB06372
DB00005        DB01656
DB00005        DB06688
DB00005        DB06273
DB00005        DB08895
DB00005        DB00072
DB00005        DB09033
DB00006        DB00054
DB00006        DB01418
DB00006        DB00945
DB00006        DB00009
DB00006        DB00029
DB00006        DB06605

希望经过处理后的out.txt如下
DB00005 DB01281 DB01656 DB06688 DB06273 DB08895 DB00072 DB09033
DB00006 DB00945 DB00009 DB00029 DB06605

灰常感谢~~~
1

评分人数

    • pcl_test: 勿发笼统、无意义的标题PB -4

回复 7# 尘丶


    看到了 ~十分感谢!

TOP

回复 5# sweet惜缘


    没少啊
心累~努力,为了美好的明天。

TOP

本帖最后由 pcl_test 于 2016-1-10 20:27 编辑

回复 3# 尘丶 回复 4# flyinnet9


    您好~~为何我用您的程序处理后结果不完整?比如说少了文件开始那部分 eg DB00005就找不到~~~灰常感谢!

DB00005        DB01281
DB00005        DB00026
DB00005        DB08879
DB00005        DB06168
DB00005        DB08904
DB00005        DB00531

TOP

精简一下楼上的
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1,2" %%a in (Data.txt) do set _%%a=!_%%a! %%b
  3. for /f "tokens=1,2 delims=_=" %%a in ('set _') do echo;%%a %%b
  4. pause
复制代码

TOP

  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1,2 delims= " %%a in (Data.txt) do (
  3.     if not defined _%%a (
  4.     set _%%a=%%b
  5.     ) else (
  6.     set _%%a=!_%%a! %%b
  7.     )
  8. )
  9. for /f "tokens=1,2 delims=_=" %%a in ('set _') do echo;%%a %%b
  10. pause
复制代码
心累~努力,为了美好的明天。

TOP

:handshake
求助~~

TOP

返回列表