标题: [文本处理] [已解决]批处理如何整理这样的txt文本行? [打印本页]
作者: wh1234567 时间: 2011-4-23 22:54 标题: [已解决]批处理如何整理这样的txt文本行?
例如txt文本里内容:
白帝城、白马寺、白洋淀、白云山、包公祠、宝墨园、抱犊寨、碑林、北戴河、北海银滩、北泉、碧峰峡、避暑山庄、冰峪、兵马俑、布达拉宫、彩色沙林、苍岩山、长山、长城、长岛、长屿硐天、成吉思汗陵、成山头、垂云通、翠华山、大佛寺、大观园、大明寺、大雁塔、大昭寺、大足石刻、丹霞山、
如何用批处理将他整理成:去掉、并将每个关键词竖立排序?例如:
白帝城
白马寺
白洋淀
白云山
包公祠
宝墨园
抱犊寨
碑林
北戴河
北海银滩
北泉
碧峰峡
避暑山庄
。。。
这样的格式呢?并要求输出到另外一个文本里
作者: CrLf 时间: 2011-4-23 23:18
可以- @echo off
- (for /f "delims=" %%a in (1.txt) do (
- set "str=%%a"
- setlocal enabledelayedexpansion
- for %%b in ("!str:、=" "!") do endlocal&echo;%%~b
- ))>2.txt
复制代码
或者复制代码
作者: Hello123World 时间: 2011-4-24 11:33
以下代码是从百度知道转来的,lz在知道提问的问题解决了(刚好看到这一问,回答不出来)。- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%i in (123.txt) do (
- set d=%%i&call :mnm)
- type temp.tmp>123.txt
- del/q/f temp.tmp&pause&exit
- :mnm
- for /f "delims=、 tokens=1,*" %%a in ("!d!") do (
- echo %%a>>temp.tmp
- set d=%%b
- if not "!d!"=="" goto :mnm)
复制代码
作者: Hello123World 时间: 2011-4-24 11:40
2# zm900612
这种思路不得不赞
作者: wh1234567 时间: 2011-4-25 00:14
2# zm900612
非常感谢,代码很精简直观,问题已解决
作者: wh1234567 时间: 2011-4-25 00:18
2# zm900612
要是删除多个字符的话不知道如何添加?
作者: Batcher 时间: 2011-4-25 11:28
6# wh1234567 - sed -i "s/、\|,\|。/\n/g" 1.txt
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |