使用TCL regexp解析文本斑点,并尝试将匹配项分配给变量。我知道匹配项存储在match中,但仅限于将语句包含在“找到设置”中。
这不起作用:
set text "asdf asdf bob foobar 123456@bar dksl: dpee" # simulating blob of text
set found [set blob $text]; regexp -nocase {\d{6}(?:@bar)} $blob match; return $found;
puts $found
有什么帮助吗?
答案 0 :(得分:0)
您的脚本有几个问题,但是正则表达式通常没问题。以下将按预期工作:
regexp -nocase {(\d{6})(?:@bar)} $text _ found
(请注意分组括号!)
您的脚本存在问题:
return
(没有必要,因为您不是从proc
返回)。结果,行puts $found
最终成为无效代码。blob
等。