我正在使用的代码:
set channel 52/80
if {![ regexp { ([0-9]+)\/80 } $channel match cchannel ] } {
puts "Channel regex-ed in \[SLVR\]\[SetAffected_channels\] is: $cchannel\n\n"
}
返回错误:无法读取“ cchannel”:没有这样的变量
我这里想念什么吗?
答案 0 :(得分:2)
由于多余的空格,您的代码不匹配。
% set channel 52/80
52/80
% regexp { ([0-9]+)\/80 } $channel match cchannel
0
% regexp {([0-9]+)\/80} $channel match cchannel
1
% set match
52/80
% set cchannel
52
在这种情况下,您也不应反转regexp
的结果; if
主体脚本似乎是当模式匹配时的……