在我的网页浏览中将推文解析为可点击链接

时间:2013-06-12 10:27:54

标签: iphone objective-c regex nsstring nsregularexpression

我正在尝试将我的推文解析为提及,主题标签和链接的可点击链接。主题标签和链接正在运行。但是我提到的部分有问题......

这是我解析推文之后的一个字符串。

正常推文

@stubru @festivalinfo @MNMbe Genk on stage - news: Amatorski vervangt Ewert & The Two Dragons - http://t.co/mNEaTsEDyC

解析推文

<a href<a href='http:<a href='http://twitter.com///twitt'>//twitt</a> er.com/='http:<a href='http://twitter.com///twitt'>//twitt</a> '>='http:<a href='http://twitter.com///twitt'>//twitt</a> </a> er.com/stubru'>@stubru</a>  @festivalinfo @MNMbe Genk on stage - news: Amatorski vervangt Ewert &amp; The Two Dragons - <a href='http://t.co/mNEaTsEDyC' target='_blank'>http://t.co/mNEaTsEDyC</a>

这是我用于解析的函数。

  NSRegularExpression* regex2 = [NSRegularExpression regularExpressionWithPattern:@"(?:\\s|\\A)[@]+([A-Za-z0-9-_]+)" options:0 error:&error];
    NSArray* matches2 = [regex2 matchesInString:processedString options:0 range:NSMakeRange(0, [processedString length])];
    NSString* processedString2 = [processedString copy];
    for ( NSTextCheckingResult* match in matches2 )
    {
        NSString* matchText3 = [processedString2 substringWithRange:[match range]];
        NSString *matchText4 = [matchText3 stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
        NSString *search2 = [matchText4 stringByReplacingOccurrencesOfString:@"@" withString:@""];

        NSString *searchHTML2= [NSString stringWithFormat:@"<a href='http://twitter.com/%@'>%@</a> ",search2,matchText3];
        processedString2 = [processedString2 stringByReplacingOccurrencesOfString:matchText3
                                                                     withString:searchHTML2];

    }
    tweetText = processedString2;

有人可以帮我这个吗?

修改 被排除的输出应该是

<a href="http://twitter.com/stubru">@stubru</a><a href="http://twitter.com/festivalinfo">@festivalinfo</a>href="http://twitter.com/MNMbe">@MNMbe</a> Genk on stage - news: Amatorski vervangt Ewert &amp; The Two Dragons - <a href='http://t.co/mNEaTsEDyC' target='_blank'>http://t.co/mNEaTsEDyC</a>

亲切的问候

0 个答案:

没有答案