
批處理如何單個字符解析文本文檔背景:有個 KID 社某小說的劇本文件,劇本中角色名稱在劇本中使用“【”和“】”包圍。需要列出所有角色的名稱。(單行可能會出現多個角色名稱。劇本有多個文件。)設想:使用 FOR 語句,單個字符判斷。如果找到“【”符號,將從“【”(被找到的)開始單個字符判斷并寫入到變量,如果找到“】”符號則停止。當搜索完畢后所有角色名稱刪除重復對象。草稿:
測試時遇到問題,第 4 行似乎執行錯誤,因為第 4 行錯誤導致第五行不能正常執行,第 7 行和第 8 行回顯”ECHO 處于關閉狀態“。這樣我就無法在嵌套 FOR /L 中獲取取當前數值了。簡單來說我就是想把所有文本文檔的正文中所有用【】包圍的內容寫入到另一個文件,每行一項。并刪除重復項。nclick="copycode($('code0'));">復制代碼
- @echo off
- for /f delims= %%a in (整個劇本.txt) do (
- for /l %%b in (1,0,1) do (
- set c=%%b
- set /a d=c+1
- echo %%b
- echo %c%
- echo %d%
- )
- )

