Board logo

标题: [文本处理] [已解决]批处理怎样实现文本内容自动排序? [打印本页]

作者: Rasm    时间: 2011-10-5 11:33     标题: [已解决]批处理怎样实现文本内容自动排序?

如果只是单纯的文本排序我会,可现在的问题是前面都有一个“/”

这下问题就有点懊恼了

文本内容如下:

/afaf
/asdfaf
/dddd
/gggg
/werwer
/uuuuurrr
/344
/2323sss
/ccc232
/新闻报道
/sfwef

前面都有一个“/”,而且内容有中文字和数字,字母

我想着就是想先 以  字母排序,然后数字排序,最后 中文内容的话,就默认留到最后

不知道这个批处理该怎么写
作者: CrLf    时间: 2011-10-5 12:17

@(for %%a in ("/[a-Z]" "/[0-9]" "/v "/[a-Z]" "/[0-9]"") do findstr /b %%~a a.txt|sort)>b.txt
作者: Batcher    时间: 2011-10-5 13:56

你既然会文本排序,前面多了个/怎么就不会了呢?它又不影响最终结果
作者: Rasm    时间: 2011-10-5 17:49

回复 2# CrLf


    貌似不行,卡在这里了
作者: sky02    时间: 2011-10-5 18:15

把文本内容复制到EXCEL表格内,用升降序排列一下,排列好后复制过来就行了
作者: Rasm    时间: 2011-10-5 18:17

本帖最后由 Rasm 于 2011-10-5 18:18 编辑

回复 5# sky02


    试过,直接卡死了

唉,11万多行的数据,而且excel也有限制,最多6万
作者: sky02    时间: 2011-10-5 18:56

回复 6# Rasm

可以分割开来做,比如先做四万行
作者: CrLf    时间: 2011-10-5 19:17

  1. @echo off
  2. (for %%a in ("\/[a-Z]" "\/[0-9]" "/v /rc:"\/[a-Z]" /c:"\/[0-9]"") do findstr /b %%~a a.txt|sort)>b.txt
  3. pause
复制代码

作者: FOR    时间: 2011-10-5 19:32

下面的文本你排序后是怎样的?
  1. /aadfasdhus
  2. /af23456dfidf
  3. /35672
  4. /5767
  5. /zdfdf555dfi
  6. /adf782dfi
  7. /zd你好df
  8. /dfi阿dfi
  9. /78923好456
  10. /好的123
  11. /abc好123
  12. /123好zzz
复制代码

作者: bluewing009    时间: 2011-10-5 22:15

不是有个现成的命令么sort /?




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2