编辑:刚刚看到您找到答案... sheeeiiitttt
我从字面上学到了!为此,您甚至不需要在UIWebView中显示它。(但是在使用时,您只需获取当前页面的URL)
无论如何,这是代码和一些(可能的)解释:
//create a URL which for the site you want to get the info from.. just replace google with whatever you want
NSURL *currentURL = [NSURL URLWithString:@"http://www.google.com"];
//for any exceptions/errors
NSError *error;
//converts the url html to a string
NSString *htmlCode = [NSString stringWithContentsOfURL:currentURL encoding:NSASCIIStringEncoding error:&error];
因此,我们有了HTML代码,现在如何获得标题?好吧,在每个基于html的文档中,标题都由“这就是标题”发出信号。因此,最简单的方法可能是在htmlCode字符串中搜索,和,然后对其进行子字符串搜索,以便我们在两者之间找到东西。
//so let's create two strings that are our starting and ending signs
NSString *startPoint = @"<title>";
NSString *endPoint = @"</title>";
//now in substringing in obj-c they're mostly based off of ranges, so we need to make some ranges
NSRange startRange = [htmlCode rangeOfString:startPoint];
NSRange endRange = [htmlCode rangeOfString:endPoint];
//so what this is doing is it is finding the location in the html code and turning it
//into two ints: the location and the length of the string
//once we have this, we can do the substringing!
//so just for easiness, let's make another string to have the title in
NSString *docTitle = [htmlString substringWithRange:NSMakeRange(startRange.location + startRange.length, endRange.location)];
NSLog(@"%@", docTitle);
//just to print it out and see it's right
就是这样!因此,基本上可以解释docTitle中发生的所有恶作剧,如果仅通过说NSMakeRange(startRange.location,endRange.location)来确定范围,我们将获得标题和startString的文本(即),因为位置是通过字符串的第一个字符。因此,为了弥补这一点,我们只添加了字符串的长度
现在请记住,此代码未经测试..如果存在任何问题,则可能是拼写错误,或者在我不应该这样做时没有/没有添加指针。
如果标题有点怪异而不是完全正确,请尝试弄乱NSMakeRange -我的意思是像添加/减去不同长度/字符串的位置-看起来合理的任何事情。
如果您有任何疑问或问题,请随时提出。这是我在本网站上的第一个答案,如果有点混乱,请您谅解