正则表达式计算

时间:2012-06-19 08:50:05

标签: regex

有没有人知道从这个字符串计算47380539-47366525的正则表达式(或其他类型的快速命令)?

1:47366525-47380539

坚持使用脚本。

2 个答案:

答案 0 :(得分:2)

假设你正在做一些shell脚本,这里有一些Perl示例。

匹配47366525-47380539中的1:47366525-47380539

echo 1:47366525-47380539 | perl -nE '/:([\d-]+)/ && say $1'

如果要计算数学表达式的结果:

echo 1:47366525-47380539 | perl -nE '/:([\d-]+)/ && say eval $1'

答案 1 :(得分:1)

我假设你想提取相关部分(正则表达式不能做数学)。

\d+:(\d+-\d+)

此正则表达式将匹配格式为digits:digits-digits的字符串您可以提取第一个捕获的组以获取所需的部分。