gpt4 book ai didi

bash - 删除 HTML anchor 标记,但保留 bash 命令行中的 anchor 文本

转载 作者:行者123 更新时间:2023-11-29 09:41:23 25 4
gpt4 key购买 nike

我如何删除 anchor 标记但在 Bash 中保留 anchor 文本?所以我想删除除示例文本以外的所有内容。

<a href="http://example.com">Example text</a>

如果我这样做:

echo '<a href="http://example.com">Example text</a>' | sed -e 's/<[^>]*>//g'

这将删除所有 HTML。我希望仅删除 anchor 标记,但也保留 anchor 文本,在本例中为“示例文本”。

最佳答案

您可以使用以下命令:

$ echo '<a href="http://example.com">Example text</a>' | sed -e 's/<[^>]*>//g'
Example text

或者,您也可以使用 perl 而不是 sed,因为 non greedy正则表达式在这里会有帮助:

$ echo '<a href="http://example.com">Example text</a>' | perl -pe 's/\<.*?\>//g'
Example text

注意:使用正则表达式解析HTML是discouraged ,但对于这个小任务,我认为坚持使用命令行中可用的工具很好。

编辑:要删除 anchor 标记,您可以使用正则表达式更新如下:

sed -e 's/<\/\?a\s*[^>]*>//g'

关于bash - 删除 HTML anchor 标记,但保留 bash 命令行中的 anchor 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9183493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com