iphone - 可以安全使用正则表达式吗? (HTML)

标签 iphone html ios regex ios6

我正在解析一些HTML,我需要在body标签中获取所有html。我的目标字符串将始终如下所示:

<body><div><img src="" />text etc</div></body>

但是,我只需要:
<div><img src="" />text etc</div>

我的目标字符串将始终以这些body标签开头和结尾。但是,反复警告不要使用Regex解析HTML,但是除了Regex之外,我没有任何可行的解决方案。

问题:在这种情况下是否可以使用任何安全的正则表达式?还是我应该忘记它?

最佳答案

您没有向我们展示您的正则表达式是什么,但是如果它像下面这样简单,则不如使用DOM解析安全:

<body>(.*?)</body>

...因为</body>可能包含在属性字符串或注释中。如果您愿意冒险,那您会没事的。但是,没有理由您不应该使用DOM解析并仅获取正文文本,除非它可能效率较低。

您也可以跳过正则表达式,仅查找<body></body>的字符串索引,并获取它们之间的子字符串。那应该更快。

顺便说一句,这不是解析HTML。您只是从HTML中提取

关于iphone - 可以安全使用正则表达式吗? (HTML),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16630123/

相关文章:

具有方向检测功能的 iPhone 浏览器模拟器

html - 关于全覆盖搜索菜单的建议

JavaScript 无法找到该元素

iphone - 转换为 float 并计算

ios - CircleCI for iOS - 缓存 cocoapods 依赖

iphone 代码 - CGPoint 问题

iphone - Cocoa/iOS/iPhone 中的模型对象所有权和 MVC

iphone - Apple会拒绝使用KVC在UIViewController上设置parentViewController的应用程序吗?

Javascript 所见即所得逻辑

iOS UILabel.appearance().textColor 不可用