【发布时间】:2013-07-18 17:46:55
【问题描述】:
我有这个字符串:
rder=3D"0" width=3D"650">=0D=0A <tr>=0D=0A <td valign=3D"top">=0D=0A <p>=0D=0A <strong>Hi Mike Tyson</strong>,<br/>=0D=0A =
我想从字符串中提取Mike Tyson。上面的字符串中除了名称之外的所有内容始终相同,所以我的第一个线索就是使用这个正则表达式:
[^rder=3D"0" width=3D"650">=0D=0A <tr>=0D=0A <td valign=3D"top">=0D=0A <p>=0D=0A <strong>Hi ].*[^<\/strong>,<br\/>=0D=0A =]
但是,这会输出 Mike Ty 而不是 Mike Tyson。有什么想法吗?
【问题讨论】:
-
你能给出完整的 html 代码吗?
-
你不了解字符类的使用。看看这个链接:regular-expressions.info/charclass.html
-
这个非常流行的问题和第一个答案概括地概括了如何接收到 HTML 的正则表达式:stackoverflow.com/questions/1732348/… - TL;DR:你会在几个地方侥幸逃脱,但只要它开始花费您的时间来调试、停止和获取 HTML 解析器(Ruby 的
nokogiri很好)来完成您的工作
标签: ruby regex html-parsing