不平衡括号的 Tcl-regexp

时间:2021-06-16 14:26:02

标签: tcl

每次我写:

set a "cell (number 3)"
regexp "cell (" $a

我收到一条错误消息,指出括号 () 不平衡。 我该如何解决? 我不想写regexp "cell (number 3)" $a

1 个答案:

答案 0 :(得分:1)

( 字符在正则表达式中很特殊:它开始一对捕获括号。

你想告诉正则表达式你想要一个文字左括号:

regexp {cell \(} $a
# or
regexp {cell [(]} $a

最好的做法是用大括号而不是引号将正则表达式文字括起来:它允许您最大限度地减少过多的反斜杠,以保护正则表达式字符不受它们的特殊 Tcl 含义的影响。