我目前使用的是UIWebView来设定twitter的帖子风格。有些推文当然包含URL,但不包含<a>
标签。我可以提取网址,但是我不确定如何添加<a>
标签并放回到推文中。然后,我将使用相同的方法将链接添加到@usernames和#hashtags。这里是我当前的代码示例:NSRegularExpression:用url替换url文本<a>标签
NSString *tweet = @"Sync your files to your Google Docs with a folder on your desktop. Like Dropbox. Good choice, Google storage is cheap. http://ow.ly/4OaOo";
NSRegularExpression *expression = [NSRegularExpression regularExpressionWithPattern:@"(?i)\\b((?:[a-z][\\w-]+:(?:/{1,3}|[a-z0-9%])|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))" options:NSRegularExpressionCaseInsensitive error:NULL];
NSString *match = [tweet substringWithRange:[expression rangeOfFirstMatchInString:tweet options:NSMatchingCompleted range:NSMakeRange(0, [tweet length])]];
NSLog(@"%@", match);// == http://ow.ly/4OaOo
最后,我想最后一个字符串看起来像这样:
Sync your files to your Google Docs with a folder on your desktop. Like Dropbox. Good choice, Google storage is cheap. <a href="http://ow.ly/4OaOo>http://ow.ly/4OaOo</a>
任何帮助将非常感激。
这将工作完美。我从来没有想过使用JavaScript。 – 2011-05-05 21:00:20
这可能是缓慢的JS,检查我的OBJ - C的解决方案。 – 2011-05-05 21:03:48
在这种情况下,如果我们使用正则表达式两次获得相同的链接link可以添加另一个 – 2014-07-22 03:03:13