我有一个简单的TCL正则表达式匹配,
regexp {^[^,]+} $n id
适用于像"1,last"这样的字符串.它剥离文本并仅返回数字,但我无法理解它是如何工作的我虽然"^"符号的意思是"忽略"/否定
我不知道它是如何确定数字的,希望你能帮助我...谢谢
^
可以有两个含义.
在字符类之外,它是一个锚,意思是"字符串的开头"(或者行的开头,取决于当前选项).
在一个字符类中,它否定了它的内容.[^abc]
匹配既不是a
a b
,a也不是a的字符c
.
因此,在您的示例中,正则表达式仅匹配字符串/行的开头,从而允许[^,]+
匹配1
并阻止匹配last
.