我对tcl中的正则表达式有疑问 以下代码的含义是什么:
set servRef "servRef=(\\d+)"
将变量servRef设置为“servRef =(\ d +)”;这是什么意思?
上面的代码是将servRef作为patarmer传递给函数,获取servRef值并将消息发送给它。那么“servRef =(\ d +)”意味着什么呢?
答案 0 :(得分:3)
你已经过度思考了这个问题。你有什么
set servRef "servRef=(\\d+)"
只是一个将变量servRef
设置为值servRef=(\d+)
的命令。该值可能会被另一个命令用作以后的正则表达式,但它只是一个值。
有用的是记住Tcl没有很多上下文敏感的结构。
答案 1 :(得分:2)
你没有显示足够的上下文以确定,但我猜想以后$ serfRef将被用作regexp命令中匹配的模式,该命令扫描一些输入以查找像serfRef=1234
这样的字符串并将1234提取为子匹配变量供以后使用。有关详细信息,请参阅Tcl wiki regexp page。