" 但这并没有像预期的那-6ren">
gpt4 book ai didi

regex - 从html页面中提取数据的正则表达式

转载 作者:可可西里 更新时间:2023-11-01 11:44:39 26 4
gpt4 key购买 nike

我想从 html 页面中提取所有 anchor 标记。我在 Linux 中使用它。

lynx --source http://www.imdb.com | egrep "<a[^>]*>"

但这并没有像预期的那样工作,因为结果包含不需要的结果

<a class="amazon-affiliate-site-name" href="http://www.fabric.com">Fabric</a><br>

我只想

<a href >...</a>

有什么好办法吗?

最佳答案

如果您的 grep 中有一个 -P 选项以便它接受 PCRE 模式,您应该能够使用更好的正则表达式。有时像 *? 这样的最小量词会有所帮助。此外,您将获得整个输入行,而不仅仅是匹配项本身;如果你有一个 -o grep 选项,它将只列出匹配的部分。

egrep -Po '<a[^<>]*>'

如果你的 grep 没有这些选项,试试

perl -00 -nle 'print $1 while /(<a[^<>]*>)/gi'

现在跨越线边界。

要对 HTML 进行真正的解析,需要的正则表达式比您希望在命令行上输入的要复杂得多。 Here’s one example , 和 here’s another .这些可能无法说服您尝试非正则表达式方法,但它们至少应该向您展示在一般情况下比在特定情况下更难。

这个答案说明了为什么 all things are possible, but not all are expedient.

关于regex - 从html页面中提取数据的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4977850/

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