相关疑难解决方法(0)

在iOS中将HTML转换为NSAttributedString

我正在使用一个实例UIWebView来处理一些文本并正确地着色它,它将结果作为HTML而不是显示在UIWebView我希望Core Text用a 显示它NSAttributedString.

我能够创建和绘制NSAttributedString但我不确定如何将HTML转换并将HTML映射到属性字符串.

据我所知,在Mac OS X下NSAttributedString有一个initWithHTML:方法,但这只是Mac的补充,不适用于iOS.

我也知道有一个类似的问题,但它没有答案,我虽然我会再试一次,看看是否有人创造了一种方法来做到这一点,如果是的话,他们是否可以分享它.

iphone cocoa-touch objective-c nsattributedstring core-text

143
推荐指数
8
解决办法
10万
查看次数

从iPhone上的NSString中删除HTML标签

有几个不同的方法来去除HTML tagsNSStringCocoa.

一种方法是将字符串渲染为a NSAttributedString然后抓取渲染的文本.

另一种方法是使用NSXMLDocument's- objectByApplyingXSLTString方法来应用XSLT执行它的变换.

不幸的是,iPhone不支持NSAttributedStringNSXMLDocument.有太多的边缘情况和格式错误的HTML文档让我觉得使用正则表达式或NSScanner.有人有解决方案吗?

一个建议是简单地查找开始和结束标记字符,除非非常简单的情况,否则此方法不起作用.

例如,这些案例(来自同一主题的Perl Cookbook章节)会打破这种方法:

<IMG SRC = "foo.gif" ALT = "A > B">

<!-- <A comment> -->

<script>if (a<b && a>c)</script>

<![INCLUDE CDATA [ >>>>>>>>>>>> ]]>
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch objective-c nsstring ios

105
推荐指数
9
解决办法
10万
查看次数

如何从iphone中的NSString中删除HTML标签?

我正在为我的应用程序需求工作日历功能.我今天点击日期或明天日期或其他日期需要显示吉祥的详细信息.UITextview我一直在尝试在文本视图中格式化字符串,但我无法解决它.我是xcode的新手HTML.我想删除我的stringResonse 中的标签并显示在UITextview.

我在我的代码中这样写:

-(void)connectionDidFinishLoading:(NSURLConnection *)connection

{

[UIApplication sharedApplication].networkActivityIndicatorVisible=NO;

if(connection==urlConnection)

{

NSString *strResponse=[[NSString alloc]initWithData:responseData encoding:NSUTF8StringEncoding];

NSLog(@"String Response is : %@",strResponse);

NSMutableString *mutString=[NSMutableString string];

NSString *s=nil;

NSString *s1=nil;

//NSArray *arr1=[strResponse componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"<br>"]];

NSArray *arr2=[strResponse componentsSeparatedByString:@"\n"];

NSLog(@"array %@",arr2);

for(s in arr2)

{

s = [s stringByReplacingOccurrencesOfString: @"<br>" withString: @"\n"];

s1=[s stringByReplacingOccurrencesOfString:@"<font color>" withString:@" "];

[mutString appendString:@""];

[mutString appendString:s1];

}

text1.text=[text1.text stringByAppendingString:mutString];

}

}

- (void)viewDidLoad

{

[super viewDidLoad];
    // Do any additional setup after loading the view. …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c ios

-2
推荐指数
2
解决办法
1万
查看次数