sed - 从字符串中提取特定字符
sed - extract specific characters from a string
所以我有些不洁HTML:
"<table class="content divbackground"><tr><td class='title'> </td><td class='title'>From</td><td class='title'>To</td></tr><tr><td class='entry'>Monday</td><td class='entry'>09:00</td><td class='entry'>18:00</td></tr><tr><td class='entry'>Tuesday</td><td class='entry'>09:00</td><td class='entry'>18:00</td></tr><tr><td class='entry'>Wednesday</td><td class='entry'>09:00</td><td class='entry'>18:00</td></tr><tr><td class='entry'>Thursday</td><td class='entry'>09:00</td><td class='entry'>20:00</td></tr><tr><td class='entry'>Friday</td><td class='entry'>09:00</td><td class='entry'>20:00</td></tr><tr><td class='entry'>Saturday</td><td class='entry'>09:00</td><td class='entry'>18:00</td></tr><tr><td class='entry'>Sunday</td><td class='entry'>11:00</td><td class='entry'>18:00</td></tr></table></td></td>"
这是一家药店的营业时间(信息发布在 public 登记册上)。
现在我可以使用解析器解析 HTML,但我发现这对错误不可靠,我仍然必须提取 <table>
和 </table>
之间的代码.
是否有一些很好的 unix 命令 (sed?) 可以搜索以下所有事件:
XX:XX
在 <td></td>
标签内
X 必须是数字吗?
使用正则表达式处理 html 不是好的做法。然而,如果你的输入格式是固定的,你可以试试这个 grep 行:
grep -oP '<td[^>]*>\K\d\d:\d\d' input
使用您的示例输入,它输出:
09:00
18:00
09:00
18:00
09:00
18:00
09:00
20:00
09:00
20:00
09:00
18:00
11:00
18:00
所以我有些不洁HTML:
"<table class="content divbackground"><tr><td class='title'> </td><td class='title'>From</td><td class='title'>To</td></tr><tr><td class='entry'>Monday</td><td class='entry'>09:00</td><td class='entry'>18:00</td></tr><tr><td class='entry'>Tuesday</td><td class='entry'>09:00</td><td class='entry'>18:00</td></tr><tr><td class='entry'>Wednesday</td><td class='entry'>09:00</td><td class='entry'>18:00</td></tr><tr><td class='entry'>Thursday</td><td class='entry'>09:00</td><td class='entry'>20:00</td></tr><tr><td class='entry'>Friday</td><td class='entry'>09:00</td><td class='entry'>20:00</td></tr><tr><td class='entry'>Saturday</td><td class='entry'>09:00</td><td class='entry'>18:00</td></tr><tr><td class='entry'>Sunday</td><td class='entry'>11:00</td><td class='entry'>18:00</td></tr></table></td></td>"
这是一家药店的营业时间(信息发布在 public 登记册上)。
现在我可以使用解析器解析 HTML,但我发现这对错误不可靠,我仍然必须提取 <table>
和 </table>
之间的代码.
是否有一些很好的 unix 命令 (sed?) 可以搜索以下所有事件:
XX:XX
在 <td></td>
标签内
X 必须是数字吗?
使用正则表达式处理 html 不是好的做法。然而,如果你的输入格式是固定的,你可以试试这个 grep 行:
grep -oP '<td[^>]*>\K\d\d:\d\d' input
使用您的示例输入,它输出:
09:00
18:00
09:00
18:00
09:00
18:00
09:00
20:00
09:00
20:00
09:00
18:00
11:00
18:00