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

[文本处理] [已解决]请问批处理如何实现文字的排列组合?

根据a、b文件,实现c文件。a文件m行,b文件n行。
实际上就是,a文件复制n行,b文件复制m行,然后2者组合在一起。
a.txt


保持
奇怪
……


b.txt

这个
问题
不知道
怎么办
……


c.txt
一成
一这个
一问题
一不知道
一怎么办
人成
人这个
人问题
人不知道
人怎么办
保持成
保持这个
保持问题
保持不知道
保持怎么办
奇怪成
奇怪这个
奇怪问题
奇怪不知道
奇怪怎么办
……
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

回复 3# qixiaobin0715


    不用了,改好了,打扰了,不好意思

TOP

回复 3# qixiaobin0715


    你好,可否修改一下这段代码,增加,如果排列组合过程中,a.txt中的字符串和b.txt的字符串相同,则跳过组合,例如a.txt某行是“其它”,b.txt的某行是“其它”。则跳过,不进行这一行的组合,其它组合照旧。谢谢

TOP

这样可以避免文本中含有空白字符而造成显示不全的问题:
  1. @echo off
  2. (for /f "delims=" %%i in ('type "a.txt"') do (
  3.     for /f "delims=" %%j in ('type "b.txt"') do (
  4.         echo,%%i%%j
  5.     )
  6. ))>c.txt
  7. pause
复制代码

TOP

回复 1# 每天几分
您看这样可以吗?
  1. @Echo Off & @Chcp 936 > Nul & @Goto :Main
  2. :Main
  3. Cd. > C.Txt
  4. For /F %%I in ('Type A.Txt') Do (
  5. For /F %%J in ('Type B.Txt') Do (
  6. >> C.Txt Echo.%%I%%J
  7. )
  8. )
  9. Echo.处理完成,请按任意键退出...
  10. Pause > Nul
  11. @Exit /B
复制代码
1

评分人数

Why join the navy, if you can be a pirate? - Steve Jobs

TOP

返回列表