TCL脚本中的正则表达式

时间:2017-05-09 07:15:38

标签: regex tcl

我需要在字符串中多次匹配“数据到达” “数据到达时间数据到达数据到达时间数据到达数据到达时间”

我已执行以下TCL代码

代码:

set a "data arrival time data arrival data arrival time data arrival data arrival time"

regexp {(data arrival)*} $a match

puts $match

然而,我只获得一次数据到达。 请帮助我获得理想的结果

2 个答案:

答案 0 :(得分:0)

您只使用正则表达式搜索0个或更多连续出现的data arrival子字符串。

您只需找到多个匹配项,请参阅example code

set a {data arrival time data arrival data arrival time data arrival data arrival time}
set RE {data arrival}
set match [regexp -all -inline $RE $a]
puts $match

答案 1 :(得分:0)

您需要指定要搜索与字符串匹配的所有出现。在此处阅读更多内容:How do I extract all matches with a Tcl regex?