0

我正在使用的代码:

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”:没有这样的变量

我在这里缺少什么吗?

4

1 回答 1

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正文脚本似乎适用于模式匹配时...

于 2019-12-04T19:56:22.167 回答