sed:使用正则表达式来摆脱<img ...=""/>部分

时间:2014-10-09 15:16:47

标签: html regex linux sed

对于文字ABC<img src="test"></a>,我希望摆脱<img ...>部分,换句话说,我希望结果显示为:ABC</a>。我尝试了几种模式,但都没有。

echo 'ABC<img src="test"></a>'|sed -e "s/<img src=\".*>//g"
ABC

我不知道是否应该逃离<>,当我这样做时,我得到以下结果:

echo 'ABC<img src="test"></a>'|sed -e "s/\<img src=\".*\>//g"
ABC<>

任何人都可以澄清这些结果并给我一个令人满意的结果吗?

1 个答案:

答案 0 :(得分:1)

只需表明您要从<img +中移除任何字符集,直到找到新的>为止。

sed "s/<img[^>]*>//g"

测试

$ sed "s/<img[^>]*>//g" <<< 'ABC<img src="test"></a>'
ABC</a>