Tcl 展开给定字符串中的一些通配符并返回字符串列表

Tcl 展开给定字符串中的一些通配符并返回字符串列表,tcl,expansion,Tcl,Expansion,是否可以编写一个proc,该proc将给出一个字符串,并将展开一些通配符并返回字符串列表,如下所示: proc expand_string { string } { ... } set a [expand_string {[1-5]a}] puts $a #a is: 1a 2a 3a 4a 5a 感兴趣的通配符包括: [12..a..z]: 匹配括号中列出的任何字符 [a-z]: 匹配a和z之间的所有字符 ?abc: 匹配abc的零个或一个实例。这是唯一的通配符吗?如果你也有*和?如果

是否可以编写一个proc,该proc将给出一个字符串,并将展开一些通配符并返回字符串列表,如下所示:

proc expand_string { string } {
 ...
}

set a [expand_string {[1-5]a}]

puts $a #a is: 1a 2a 3a 4a 5a
感兴趣的通配符包括:

[12..a..z]: 匹配括号中列出的任何字符

[a-z]: 匹配a和z之间的所有字符

?abc:
匹配abc的零个或一个实例。

这是唯一的通配符吗?如果你也有*和?如果使用grep通配符或.*和\w,如果使用regex元字符,则会非常复杂。。我已经更新了这个问题。嗯,在我看来会很复杂。可能吗?当然容易的不,你们可以从开始,因为你们所要求的可以被改写成大括号展开序列的翻译…