为什么这个正则表达式不适用于grep?

时间:2015-11-21 23:13:03

标签: regex grep

输入是一个非常基本的html页面,带有git分支名称和短提交哈希,例如:

<p>master 72s6cg</p>

当我将页面源插入http://regexr.com/时,我可以使用

来定位提交哈希
[a-z0-9]*(?=<\/p>)

当我尝试卷曲页面并将输出管道输出到grep时,我得到的是一个空行。

foo=$(curl https://someurl.com/version | grep '[a-z0-9]*(?=</p>)')
echo $foo

什么都不返回

1 个答案:

答案 0 :(得分:2)

使用GNU grep:

echo '<p>master 72s6cg</p>' | grep -Po '[a-z0-9]*(?=</p>)'

输出:

72s6cg