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

回复 8楼 的帖子

题意还是没有理解对,难道我表达能力这么差!题目是要找出a.txt中所有彼此相同的列啊。。。

[ 本帖最后由 batman 于 2011-3-11 00:16 编辑 ]
***共同提高***

TOP

回复 9楼 的帖子

题意还只有你理解对了,但结果不正确,请修改。。。

[ 本帖最后由 batman 于 2011-3-10 19:05 编辑 ]
***共同提高***

TOP

  1. @echo off&setlocal enabledelayedexpansion
  2. ::将下面的[tab]改为实际的跳格键
  3. set "tab=[tab]"
  4. for /f "delims=" %%a in (a.txt) do (
  5.   set "str=%%a"
  6.   for /l %%b in (1 1 50) do (
  7.     for /f "delims=%tab%" %%c in ("!str!") do set "_%%b=!_%%b!批%%c"&set "str=!str:*%tab%=!"
  8.   )
  9. )
  10. echo,与前面列存在重复的列有:
  11. for /f "tokens=1* delims==" %%h in ('set _') do (
  12.   if "!%%i!"=="a" set "var=%%i"&echo,第%%h列:!var:批= !"
  13.   set "%%i=a"
  14. )
  15. pause>nul
复制代码

[ 本帖最后由 weichenxiehou 于 2011-3-10 19:02 编辑 ]
1

评分人数

    • batman: 积极参与最重要PB + 2
看得多说得多,远比不上写得多。

TOP

在列里找相同吗?
  1. @echo off&setlocal enabledelayedexpansion
  2. set "Tab= "这里改为跳格键
  3. for /f "delims=" %%i in (_a.txt) do (
  4.     set "str=%%i"
  5.     set n=
  6.     for %%j in ("!str:%Tab%="%Tab%"!") do (
  7.         set /a n+=1
  8.         for %%k in (!n!) do set l_%%k=!l_%%k!%Tab%%%j
  9.     )
  10. )
  11. for /l %%i in (1 1 %n%) do (
  12.     for %%j in (!l_%%i!) do (
  13.         set "var=!l_%%i:*%%j=!"
  14.         if "!var!" neq "" if "!var!" neq "!var:*%%j=!" set "Tem=!Tem! %%~j"
  15.     )
  16.     if defined Tem echo %%i列:!Tem!&set Tem=
  17. )
  18. pause
复制代码

TOP

回复 6楼 的帖子

理解错误,难道这题这么难理解!
***共同提高***

TOP

不知道我有没有理解错
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1* delims=:" %%a in ('findstr /n .* a.txt') do (
  3. set /p=第%%a行:  <nul
  4. set tmp=%%b
  5. for %%c in ("!tmp: =" "!") do (
  6. if "!.%%a%%c!"=="" (set ".%%a%%c=.") else set /p=%%~c   <nul
  7. )
  8. echo;
  9. )
  10. pause
复制代码

TOP

先发个
  1. @echo off&setlocal enabledelayedexpansion
  2. set "Tab=    "这里改为跳格键
  3. for /f "delims=" %%i in (a.txt) do (
  4.     set "str=%%i"
  5.     set "str="!str:%Tab%="%Tab%"!""
  6.     for %%j in (!str!) do (
  7.         set "var=!str:*%%j=!"
  8.         set "var1=!var:*%%j=!"
  9.         if "!var!" neq "" if "!var!" neq "!var1!" set "Tem=!Tem! %%~j"
  10.     )
  11.     echo!Tem!&set Tem=
  12. )
  13. pause
复制代码
[]

TOP

新手可以先尝试着生成a.txt这样的文本,有助于打开解题思路。。。
***共同提高***

TOP

回复 2楼 的帖子

就是找出a.txt中完全相同的列,这有可能是3 5 12列相同,同时21 49列相同,输出其共同的内容即为输出这些相同列的内容(在一行内输出,中间用|格开)。

[ 本帖最后由 batman 于 2011-3-10 19:15 编辑 ]
***共同提高***

TOP

要求找出各自相同的列组合并输出其共同的内容

没看懂~
技术问题请到论坛发帖求助!

TOP

返回列表