0

我需要将shell中的以下代码更改为tcl。请帮忙。

if (` expr $_f : proj_lp_ ` == 8) then

我需要 if 条件中条件的 tcl 等效项。

谢谢!

4

1 回答 1

1

请参阅expr 手册页,其中状态为:

  STRING : REGEXP
          anchored pattern match of REGEXP in STRING

因此,您的_f变量包含一个字符串,并且您将其与 litteral 进行比较proj_lp_。结果是匹配的长度。在 tcl 代码中,if {[regexp {^proj_lp_} $_f]} { ...}您可能只关心它是否匹配。你也可以只使用if {[string match "proj_lp_*" $_f]} {...}. expr(1) 页面说这是一个锚定的正则表达式——因此添加了插入符号。我给出的两个示例都只会在输入字符串的开头匹配(即:它们是锚定的)。

于 2013-02-06T12:50:34.390 回答