国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > BAT > 正文

批處理FOR 中的Delims和Tokens總結

2020-06-09 14:14:56
字體:
來源:轉載
供稿:網友
在For命令語句的參數F中,最難理解的就是Delims和Tokens兩個選項,本文簡單的做一個比較和總結。
“For /f”常用來解析文本,讀取字符串。分工上,delims負責切分字符串,而tokens負責提取字符串。如果把字符串當作蛋糕,Delims像刀子,用來切蛋糕,tokens像叉子,用來取切好的蛋糕。下面我們用實例來進行理解。
把以下內容保存為文本文件“歌曲列表.txt”,注意擴展名為“.txt”:
序號、歌手名-歌曲名.后綴名
1、饒天亮-玫瑰愛人.wma
2、高一首-我不愿錯過.mp3
3、黃凱芹-傷感的戀人.MP3
4、黃燦-黃玫瑰.lrc
5、黎姿-如此這般的愛情故事.mp3
代碼1:顯示全部內容
@echo off
for /f %%i in (歌曲列表.txt) do echo %%i
pause>nul
運行結果:
序號、歌手名-歌曲名.后綴名
1、饒天亮-玫瑰愛人.wma
2、高一首-我不愿錯過.mp3
3、黃凱芹-傷感的戀人.MP3
4、黃燦-黃玫瑰.lrc
5、黎姿-如此這般的愛情故事.mp3
講解:
如果不使用參數“/f”,運行結果只顯示括號里的文字字符“歌曲列表.txt”,而不能讀取文本文件“歌曲列表.txt”中的內容。可見,“/f”是解析文本字符串的好工具。
一、delims
假如只要序號,不要歌手名、歌曲名和后綴名,如何辦到?
代碼2:默認提取第一列
@echo off
for /f "delims=、" %%i in (歌曲列表.txt) do echo %%i
pause>nul
運行結果:
序號
1
2
3
4
5
講解:
"delims=、"表示定義頓號“、”為分隔符,并用該分隔符“、”切分文本字符串。字符串就是“歌曲列表.txt”里的內容,也就是文件里的文字和標點符號。
該頓號是原文中就有的。除了頓號“、”,原文中還有減號“-”和點號“.”,因此你也可以用它們來做分隔符。
代碼3:用減號“-”做分隔符
@echo off
for /f "delims=-" %%i in (歌曲列表.txt) do echo %%i
pause>nul
運行結果:
序號、歌手名
1、饒天亮
2、高一首
3、黃凱芹
4、黃燦
5、黎姿
講解:
因為,當減號“-”被用做分隔符時,每行內容被減號“-”分隔成前后兩半,默認只顯示前半部分,而后半部分連同分隔符減號“-”都被忽略(省略)了。
代碼4:用點號“.”做分隔符
@echo off
for /f "delims=." %%i in (歌曲列表.txt) do echo %%i
pause>nul
運行結果:
序號、歌手名-歌曲名
1、饒天亮-玫瑰愛人
2、高一首-我不愿錯過
3、黃凱芹-傷感的戀人
4、黃燦-黃玫瑰
5、黎姿-如此這般的愛情故事
講解:
默認情況下,單純使用delims而不用tokens時,只顯示第一個分隔符前的內容,第一個分隔符和第一個分隔符后面的內容將被忽略。
代碼5:定義多個分隔符
@echo off
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浏阳市| 奉新县| 瑞安市| 眉山市| 北碚区| 信丰县| 新郑市| 达尔| 峡江县| 保康县| 大渡口区| 休宁县| 分宜县| 突泉县| 庄河市| 宽城| 象州县| 丰城市| 黄平县| 曲阜市| 丽水市| 体育| 汝阳县| 武川县| 瓮安县| 阿合奇县| 缙云县| 宁国市| 民勤县| 内黄县| 义马市| 乐陵市| 莱阳市| 齐河县| 承德市| 赣州市| 会东县| 吕梁市| 长岛县| 太谷县| 克拉玛依市|