首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用匹配组的Pcregrep

使用匹配组的Pcregrep
EN

Stack Overflow用户
提问于 2014-04-02 08:57:55
回答 1查看 1.7K关注 0票数 2

我想使用一个简单的bash语法从一个范围内的grep数字。例如,从短语

range "7.2-55.0"

我想拯救start=7.2end=55.0

因为我知道一些perl regex (pcre),所以我尝试了:

代码语言:javascript
复制
echo 'range "7.2-55.0"' | pcregrep -o '^range \"(\S+)\"'
echo 'range "7.2-55.0"' | pcregrep -o '^range \"([0-9.-]+)\"'

这不起作用。输出是整条线。那我的错是什么?是否可以使用pcregrep保存两个匹配组?

在搜索我找到的网页时,例如pcregrep -o1,但我似乎有另一个版本的工具,因为我只允许使用-o选项(GNUBash3.2)。

EN

回答 1

Stack Overflow用户

发布于 2014-04-02 09:02:37

你可以用awk做这样的事

代码语言:javascript
复制
start=$(echo 'range "7.2-55.0"' | awk -F'["-]' '/range/ {print $2}')
end=$(echo 'range "7.2-55.0"' | awk -F'["-]' '/range/ {print $3}')
echo $start
7.2
echo $end
55.0
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22806299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档