【发布时间】:2017-03-05 04:29:52
【问题描述】:
我刚刚学会了如何使用 bash 从 html 脚本中提取数据,如下所示:
<td>hello</td>
<td>whatsup</td>
我可以使用awk -F '[<>]' '/<td>/,/<\/td>/ {print $3}' test.html
但是,如果它用这样的换行符分隔,我该怎么做?
<td>
hello
</td>
<td>
whatsup
</td>
通过教程我能想出的最好的代码是这个,它似乎不起作用。
awk -F '\n' '/<td>/,/<\/td>/ {print $2}' test.html
【问题讨论】:
-
我建议使用 XML/HTML 解析器 (xmllint, xmlstarlet ...)。
-
我正在尝试学习如何在不使用任何解析器的情况下自己解析 html。
-
好的,我将使用解析器。我只是认为这不是正则表达式无法接受的复杂脚本。