簡體   English   中英

如何僅使用 grep 提取 bash 中的 html 標簽

[英]How to use grep only to extract html tags in bash

所以我有這個代碼

<span class="cur_wind">Sunrise <b>7:33 am</b> <br />

我想用grep來提取日出時間和日落時間。 我該怎么做? 我只想使用 grep,因為我不熟悉 awk 和 sed 以及其他。 干杯!

真的不是去這里的方法,但如果你沒有任何額外的時間操作符,像下面這樣的原始東西可能會起作用。

grep -oP "(Sunrise|Sunset|\d+:\d+ (a.m|p.m))" 

樣本輸出

> cat file
<td valign="top"><span class="cur_wind">Sunrise <b>7:33 a.m.</b> <br />
            Sunset&nbsp; <b>7:17 p.m.</b></span></td>
> grep -oP "(Sunrise|Sunset|\d+:\d+ (a.m|p.m))" file 
Sunrise
7:33 a.m
Sunset
7:17 p.m

或者,這樣的事情可能會擺脫更多的錯誤情況

grep -oP "(Sunrise(.*)\d+:\d+ (a.m|p.m))|(Sunset(.*)\d+:\d+ (a.m|p.m))" file 
Sunrise <b>7:33 a.m
Sunset&nbsp; <b>7:17 p.m

您可以再次通過管道傳遞給以刪除標記字符。

你可以使用awk來做到這一點:

awk '{gsub(/<[^>]*>/, " ");$1=$1}1' file
Sunrise 7:33 a.m.
Sunset&nbsp; 7:17 p.m.

使用 grep 從<div>容器標簽</div><div id="text_translate"><p>我有一個頁面,其中包含不同作者的許多帖子。 我想要來自該帖子頁面的用戶 A 的帖子。</p><p> 如何設置 grep 以查看作者頁面中每個帖子的 html 塊,然后將帖子的內容打印到文件中? 帖子結構類似於</p><pre>&lt;;--Begin Msg Number #####--&gt; [useless junk i'm not interested in here] &lt;span class="author vcard"&gt;&lt;a class="url fn" href='url here'&gt;User A&lt;/a&gt;&amp;nbsp;&lt;/span&gt; [more junk] &lt;div class='post entry-content '&gt; &lt;!--cached-some date string--&gt; Here's the text I want to extract &lt;/div&gt; [more junk] &lt;hr /&gt;</pre><p> 我認為結構類似於</p><pre>grep /pattern/ output file</pre><p> 但我是否需要明確告訴它只在</p><pre>&lt;.-- begin msg... --&gt;</pre><p> 和</p><pre>&lt;hr /&gt;</pre><p> 綁定帖子的標簽,還是 grep 足夠智能以自動執行此操作? 我擔心當 grep 找到用戶 A 的模式時,它會將所有帖子內容打印到一個文件中,而不僅僅是那個特定的。</p></div>

[英]Using grep to extract html from <div> container tags

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

相關問題 使用 sed 或 grep 提取 HTML 標簽之間的文本 如何在bash中使用grep刪除span標簽? 使用 grep 從<div>容器標簽</div><div id="text_translate"><p>我有一個頁面,其中包含不同作者的許多帖子。 我想要來自該帖子頁面的用戶 A 的帖子。</p><p> 如何設置 grep 以查看作者頁面中每個帖子的 html 塊,然后將帖子的內容打印到文件中? 帖子結構類似於</p><pre>&lt;;--Begin Msg Number #####--&gt; [useless junk i'm not interested in here] &lt;span class="author vcard"&gt;&lt;a class="url fn" href='url here'&gt;User A&lt;/a&gt;&amp;nbsp;&lt;/span&gt; [more junk] &lt;div class='post entry-content '&gt; &lt;!--cached-some date string--&gt; Here's the text I want to extract &lt;/div&gt; [more junk] &lt;hr /&gt;</pre><p> 我認為結構類似於</p><pre>grep /pattern/ output file</pre><p> 但我是否需要明確告訴它只在</p><pre>&lt;.-- begin msg... --&gt;</pre><p> 和</p><pre>&lt;hr /&gt;</pre><p> 綁定帖子的標簽,還是 grep 足夠智能以自動執行此操作? 我擔心當 grep 找到用戶 A 的模式時,它會將所有帖子內容打印到一個文件中,而不僅僅是那個特定的。</p></div> 我如何提取 HTML 標簽中只有<p></p> Scrapy:如何僅從網頁中提取html標簽 如何從帶有 VBA 的 HTML 標簽中提取值以用於 Excel? 如何使用BeautifulSoup提取HTML標記之外的數據 如何提取HTML標記標簽 使用bash腳本從html中提取信息 如何使用 <base> 僅在html5中標記特定錨標記
 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM