Board logo

标题: [文件操作] 【已解决】如何根据文本逐字建立顺序文件夹 [打印本页]

作者: coolrat    时间: 2019-11-15 00:32     标题: 【已解决】如何根据文本逐字建立顺序文件夹

本帖最后由 coolrat 于 2019-11-16 00:56 编辑

【需求】根据一个文本;如1.txt,将文本中的内容汉字逐字建立带有文本序号的文件夹;
【应用情形】根据字帖文本整理单字图片或视频
【期待】文本内容可能来自网络复制,故可能有不规范换行符号;数字符号或标点等。文本汉字内容限定在10000字内。
1.忽略汉字以外的所有信息(数字,标点等),即只对汉字按顺序建立含有序号的文件夹。
2.相同汉字仍然按照文本出现顺序编制序号。
比如1.txt中复制的内容是《心经》,即批量建立文件夹 0001观;0002自;0003在;……00260诃

敬请大侠援手相助
作者: zaqmlp    时间: 2019-11-15 02:24

  1. @echo off
  2. set info=互助互利,支付宝扫码头像,感谢打赏
  3. rem 有问题,可加QQ956535081及时沟通
  4. title %info%
  5. cd /d "%~d0"
  6. set "txtfile=你的文本.txt"
  7. powershell -NoProfile -ExecutionPolicy bypass ^
  8.     $enc=[Text.Encoding]::Default;^
  9.     $text=[IO.File]::ReadAllText('%txtfile%',$enc);^
  10.     $c=[regex]::matches($text,'[\u4e00-\u9fa5]');^
  11.     $n=10000001;^
  12.     foreach($i in $c){^
  13.         $folder=$n.toString().Substring(2)+$i.value;^
  14.         [void](md $folder -force);^
  15.         $n++;^
  16.     };^
  17. echo;%info%
  18. pause
复制代码

作者: coolrat    时间: 2019-11-16 00:43

回复 2# zaqmlp

谢谢大侠再次应助;已扫码略表心意
作者: terse    时间: 2019-11-16 04:07

powershell练手
  1. [regex]::replace([regex]::Matches([IO.File]::ReadAllText("1.txt"),"[\p{IsCJKUnifiedIdeographs}]+").Value, "[\s\r\n]", "").GetEnumerator()| % {[void](New-Item ("{0:D4}$_.txt" -f ++$num) -type File)}
复制代码





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