【问题标题】:sed: use regular expression to get rid of <img ...> partsed:使用正则表达式去除 <img ...> 部分
【发布时间】:2023-03-26 09:45:02
【问题描述】:

对于文本ABC&lt;img src="test"&gt;&lt;/a&gt;,我希望去掉&lt;img ...&gt;部分,换句话说,我希望结果显示为:ABC&lt;/a&gt;。我尝试了几种模式,但都没有奏效。

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

不知道是应该逃跑&lt;还是&gt;,逃跑的时候得到如下结果:

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

谁能澄清这些结果并给我一个满意的结果?

【问题讨论】:

  • @MarkZar 我的解决方案对你有用吗?否则我会删除它。
  • @fedorqui 哦,对不起。我以为我已经接受了。我不知道我忘记了它还是由于网络问题。无论如何,谢谢你。效果很好。
  • @MarkZar 没问题 :) 很高兴它对你有用!

标签: html regex linux sed


【解决方案1】:

只需表明您要从&lt;img + 中删除任何字符集,直到找到新的&gt;

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

测试

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

【讨论】:

    猜你喜欢
    • 2022-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-17
    相关资源
    最近更新 更多