解析 HTML 元素
我之前用 DOM 来解析 PHP 中的网站。
我知道我永远不应该尝试使用正则表达式解析 HTML。
但是...(我不想引发一场狗屎风暴,只是一个答案:P)
如果我只想解析 1 个 HTML 元素,例如
<a href="http://example.com/something?id=1212132131133&filter=true" rel="blebeleble" target="_blank">
并找到 href
属性的内容,我可以吗(如果可以的话,我可能需要)使用 DOM 来解析这个字符串,或者我是否需要一个完整的网页才能使用 DOM 解析它?
I've used DOM before to parse websites in PHP.
I know I should never try to parse HTML using regex.
But... (I don't want to start a shitstorm, just an answer :P )
If i want to parse just 1 HTML element, e.g.
<a href="http://example.com/something?id=1212132131133&filter=true" rel="blebeleble" target="_blank">
And find the content of the href
attribute, can I (and probably I need to if I can) use DOM to parse this string or do I need a complete webpage to be able to parse it using the DOM?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,你可以这样做。
您必须:
标签构成整个文档;
&
替换为&
(正确的 HTML 实体))。代码:
PS,如果你想包含链接文本,也可以:
Yes, you can do this.
You have to:
<a />
tag constitutes the whole document;&
with&
, the proper HTML entity).Code:
PS, if you want to include the link text, that's ok too:
如果您已经隔离了该标签,您可以轻松地调整正则表达式来解析该标签。可以在此处找到示例。这是针对java的,所以记得把不区分大小写的修饰符改到最后!
You can easily adapt a regex to parse just this tag, given you've isolated it. An example can be found here. It's for java, so remember to change the case insensitive modifier to the end!