【发布时间】:2015-08-24 19:56:00
【问题描述】:
首先,我无法控制收到的文本。只是想把它放在那里,这样你就知道我不能更改链接。
我尝试使用NSDataDetector 查找链接的文本包含以下内容:
<h1>My main item</h1>
<img src="http://www.blah.com/My First Image Here.jpg">
<h2>Some extra data</h2>
我用的检测码是这个,但是找不到这个链接:
NSDataDetector *linkDetector = [NSDataDetector dataDetectorWithTypes:NSTextCheckingTypeLink error:nil];
NSArray *matches = [linkDetector matchesInString:myHTML options:0 range:NSMakeRange(0, [myHTML length])];
for (NSTextCheckingResult *match in matches)
{
if ([match resultType] == NSTextCheckingTypeLink)
{
NSURL *url = [match URL];
// does some stuff
}
}
这是苹果链接检测的一个错误,它无法检测到带有空格的链接,还是我做错了什么?
有没有人有更可靠的方法来检测链接,无论链接是否包含空格或特殊字符或其他任何内容?
【问题讨论】:
-
正则表达式呢;例如
regularExpressionWithPattern:@"src=(\"|')(.*)(\"|')>"然后[match rangeAtIndex:2]
标签: ios objective-c regex nsdatadetector