无法检测到该字符串是“ C ++注释”

时间:2019-07-24 21:25:07

标签: regex tcl

我尝试使用tcl在c++代码文件中找到注释,但遇到regexp的问题

set str "\\ads dsa dsad s  s s s "
set result [regexp { ^\\\\ } $str]
puts "result = $result"

它显示:result = 0,但我不明白为什么。

1 个答案:

答案 0 :(得分:3)

弯曲括号中的字符串是固定的。您正在尝试找到“ (space)^\\\\(space)”的匹配项。我相信您想使用这样的东西:

set result [regexp {^\s*\\\\} $str]

此外,您的示例字符串不正确。由于双引号,反斜杠将被合并。 我相信您想使用这样的东西:

set str "\\\\ads dsa dsad s  s s s "

set str {\\ads dsa dsad s  s s s }