NSString:从字符串中删除UTF-8口音的简单方法? [英] NSString : easy way to remove UTF-8 accents from a string?

查看:113
本文介绍了NSString:从字符串中删除UTF-8口音的简单方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想更改一个句子,例如:

I want to change a sentence, for example:

Êtreou ne pasêtre. C'étaitlà-bas.

Être ou ne pas être. C'était là-bas.

将成为:

Etre ou ne pas etre. C'etait la-bas.

Etre ou ne pas etre. C'etait la-bas.

有没有简单的方法可以用NSString做到这一点?还是我必须自己检查每个字符来开发它?

Is there any easy way to do this with NSString? Or do I have to develop this on my own by checking each char?

推荐答案

NSString *str = @"Être ou ne pas être. C'était là-bas.";
NSData *data = [str dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *newStr = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
NSLog(@"%@", newStr);

...或尝试使用NSUTF8StringEncoding.

此处的编码类型列表:

https://developer.apple.com/documentation/foundation/nsstringencoding

就像FTR一样,这是编写此好答案的一种方法:

Just FTR here's a one line way to write this great answer:

yourString = [[NSString alloc]
  initWithData:
    [yourString dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES]
  encoding:NSASCIIStringEncoding];

这篇关于NSString:从字符串中删除UTF-8口音的简单方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆