tcl中的正则表达式

时间:2011-10-07 13:35:52

标签: regex tcl

我对tcl中的正则表达式有疑问 以下代码的含义是什么:

set servRef "servRef=(\\d+)"

将变量servRef设置为“servRef =(\ d +)”;这是什么意思?

上面的代码是将servRef作为patarmer传递给函数,获取servRef值并将消息发送给它。那么“servRef =(\ d +)”意味着什么呢?

2 个答案:

答案 0 :(得分:3)

你已经过度思考了这个问题。你有什么

set servRef "servRef=(\\d+)"

只是一个将变量servRef设置为值servRef=(\d+) 的命令。该值可能会被另一个命令用作以后的正则表达式,但它只是一个值。

有用的是记住Tcl没有很多上下文敏感的结构。

答案 1 :(得分:2)

你没有显示足够的上下文以确定,但我猜想以后$ serfRef将被用作regexp命令中匹配的模式,该命令扫描一些输入以查找像serfRef=1234这样的字符串并将1234提取为子匹配变量供以后使用。有关详细信息,请参阅Tcl wiki regexp page