输入为C:\ test \ deva \ tcl \ newfiles \ aug.txt
输出应为“test”“deva”“tcl”“newfiles”
“aug.txt”文件或字符串末尾的任何其他“.txt”文件不应打印。
答案 0 :(得分:5)
恢复原来的解决方案并添加一些内容......
假设这是一个文件路径而不是随机字符串,恰好需要拆分\
File split几乎可以执行您想要的操作,它会将路径拆分为列表。你还想使用lrange来选择除音量之外的所有内容,例如(未经测试的)
lrange [file split $path] 1 end-1
所以你没有c:\,它应该是文件分割返回的列表中的第一个元素
此外,如果您有可能获得目录路径而不是文件名,则可能需要先使用文件目录名,例如同样的警告重新测试
lrange [file split [file dirname $name]] 1 end
答案 1 :(得分:0)