NSRegularExpression用于获取html内容中的所有下载链接

时间:2013-05-29 13:50:39

标签: ios regex nsregularexpression

我希望使用NSRegularExpression获取html中的所有下载链接。

例如,html内容是这样的:

<a href="http://xxxx.com/file.mp3">text info</a>

我希望得到这样的所有字符串:

href="http://xxxx.com/file.mp3"

现在我正在使用这种模式:

NSString *pattern = @"(?<=href=\").+?\\.(mp3)";

但效果并不好。

1 个答案:

答案 0 :(得分:1)

正如我在评论中提到的,这个问题有点不明确,但如果我们采用面值,那么你想从字符串中的任何href标签中提取<a>属性,它文件扩展名为.mp3。我希望我做对了。

说实话,我原本以为你只需要这个URL,但是现在我们将使用href属性。

获取这些字符串的模式基本上是正确的,不需要在后面使用正面外观(这意味着href="部分包含在匹配中)。因此,使用这种模式,你应该得到你需要的东西:

NSString *pattern = @"href=\"[^\"]+\\.mp3\"";

请注意,通过包含所有不是引号的字符来匹配url,因为否则您可能会在html文本中与随机“.mp3”字符串匹配。