以下表达式:
(bin) 68 % set a 1b ;#给变量a赋值1b
1b
(bin) 69 % set result [regexp {1b2c*} $a resu] ;#将匹配变量a得到的结果赋值给变量resu
0 ;#返回匹配成功的次数
(bin) 70 % puts $resu ;#输出变量resu
can't read "resu": no such variable
(bin) 71 % set a z ;#给变量a赋值z
z
(bin) 72 % set result [regexp {zo*} $a resu] ;#将匹配变量a得到的内容赋值给变量resu
1 ;#返回匹配成功的次数
(bin) 73 % puts $resu ;#输出变量resu的值
z
(bin) 74 %
两个表达式,一个匹配条件是1b2c*,匹配对象字符串是1b,结果返回没有匹配到内容,但是第二个表达式匹配条件是zo*,匹配对象字符串是z,结果却匹配到了。这个是什么原因啊?命名第二个表达式表示的是带有zo开头的字符串啊,为什么能匹配到z?而第一个却匹配不到1b?
星号的意思是匹配0次到多次,所以哪位大神可以解答一下????
10币不多,请大神为小弟解惑。