gpt4 book ai didi

html - iOS:从 NSString(一个 html 字符串)中剥离

转载 作者:太空狗 更新时间:2023-10-29 13:38:32 29 4
gpt4 key购买 nike

所以我有一个 NSString,它基本上是一个包含所有常用 html 元素的 html 字符串。我想做的具体事情是将它从所有 img 标签中剥离。img 标签可能有也可能没有最大宽度、样式或其他属性,所以我事先不知道它们的长度。它们总是以 />

结尾

我该怎么做?

编辑:根据nicolasthenoz的回答,我想出了一个需要更少代码的解决方案:

NSString *HTMLTagss = @"<img[^>]*>"; //regex to remove img tag
NSString *stringWithoutImage = [htmlString stringByReplacingOccurrencesOfRegex:HTMLTagss withString:@""];

最佳答案

您可以使用 NSString 方法 stringByReplacingOccurrencesOfStringNSRegularExpressionSearch 选项:

NSString *result = [html stringByReplacingOccurrencesOfString:@"<img[^>]*>" withString:@"" options:NSCaseInsensitiveSearch | NSRegularExpressionSearch range:NSMakeRange(0, [html length])];

或者您也可以使用 replaceMatchesInString NSRegularExpression 的方法。因此,假设您的 html 位于 NSMutableString *html 中,您可以:

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"<img[^>]*>"
options:NSRegularExpressionCaseInsensitive
error:nil];

[regex replaceMatchesInString:html
options:0
range:NSMakeRange(0, html.length)
withTemplate:@""];

我个人倾向于这些选项之一而不是 RegexKitLitestringByReplacingOccurrencesOfRegex 方法.除非有其他一些令人信服的问题,否则没有必要为像这样简单的事情引入第三方库。

关于html - iOS:从 NSString(一个 html 字符串)中剥离 <img...>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12496860/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com