繁体   English   中英

grep从HTML提取正则表达式href和rel

[英]grep to extract out regular expression href and rel from html

我正在处理的html看起来像这样

<a class="title may-blank" data-event-action="title" href="/r/gaming/comments/6t8dj0/we_can_play_singleplayer_games_off_the_internet/" tabindex="1" data-href-url="/r/gaming/comments/6t8dj0/we_can_play_singleplayer_games_off_the_internet/" data-inbound-url="/r/gaming/comments/6t8dj0/we_can_play_singleplayer_games_off_the_internet/?utm_content=title&amp;utm_medium=hot&amp;utm_source=reddit&amp;utm_name=frontpage" rel="">We can play singleplayer games OFF THE INTERNET? Are they seriously that out of touch to advertise this?</a>

这样的多行

我只想要href="http://xxxxxxxx"rel="">yyyyyyyyyy的引号之间的rel="">yyyyyyyyyy ,其余的都是不必要的。

我希望他们像这样输出,上面的每个块都换一行

<a href="http://xxxxxxxx" rel="">yyyyyyyyyy</a>

知道我该如何解决吗?

因此,这是一个10秒钟的解决方案。 它可能有点脆弱,但是应该假设字符串在名为html.txt的文件中就可以工作

cat html.txt | sed 's/class.*href/href/' | sed 's/data-in.*rel=/rel=/'

Ĵ

您的html示例将我带到以下模式以获取所需的值:

<a class=\"(.*) href=\"/(.*)\" tabindex=(.*) rel=\"\">(.*)</a>

使用以下模式替换匹配项:

<a href="http://$2" rel="">$4</a>

您可以在regexe上为我试用 ,它的工作原理与预期的一样。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM