Board logo

标题: 请教一下这个批处理要怎么写呢??? [打印本页]

作者: 20221103     时间: 2007-4-18 14:54    标题: 请教一下这个批处理要怎么写呢???
假如我有一个文本文件txt.txt
内容如下
1 허약해진 체력을 보충하는 한약 恢复生命力的药 弱くなったHPを補う薬 Korean medicine that replenishes weak HP
2 마법력을 회복시켜주는 한약 恢复魔法力的药 MPを回復させる薬 Korean medicine that recovers magic power
3 배탈을 치료하는 한약 治疗消化不良的药 消化不良を治す薬 Korean medicine that treats indigestion
4 위염을 완화시키는 한약 缓解胃炎症状的药 胃炎を緩和させる薬 Korean medicine that subdues gastritis


格式是这样的
编号 韩文 中文 日语 英文

我想用FOR命令实现输出这样的格式
编号 韩文 中文 日语 中文
要怎么做呢?????delims= ?????

作者: bjsh     时间: 2007-4-18 21:56
你试试这个吧;效率比较慢算法也比较低级:
难就难在韩语里面也有空格


  1. @echo off & setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in (txt.txt) do set "var=%%a" && call :re
  3. goto exit
  4. :re
  5. for %%i in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do set "var=!var:%%i=!"
  6. set "var_bak=%var%"
  7. set "count=1"
  8. :start
  9. set "var=%var:~1%"
  10. if "%count%"=="1" if "%var:~0,1%"==" " if "%var:~1,1%"==" " set count=0 && goto loop
  11. if "%count%"=="0" if "%var:~0,1%"==" " if "%var:~1,1%"==" " goto take
  12. goto start
  13. :loop
  14. set "var=%var:~1%"
  15. set /a count+=1
  16. if %count% equ 8 set "count=0" && goto start
  17. goto loop
  18. :take
  19. for /f "tokens=1" %%A in ('echo %var%') do echo %var_bak%%%A && pause
  20. :exit
BJSH发表于: 2007-04-18 08:46


Last edited by bjsh on 2007-4-18 at 08:57 AM ]

作者: htysm     时间: 2007-4-19 00:21
在文本文件里能不能显示韩文吧。

作者: bjsh     时间: 2007-4-19 00:30
我的也是显示不了韩文;
我是拿数字加空格模拟的;

作者: vkill     时间: 2007-4-19 02:06
应该很简单的

作者: htysm     时间: 2007-4-19 03:45
好象是用“findstr /n“打印行号就行了的。等待高手。

作者: lxmxn     时间: 2007-4-19 10:27
楼主应该把txt.txt文件以附件的形式上传上来的。