解析字符串
解析为多种类型(数组,字典…)
- (id)propertyList;
解析为字典
- (nullable NSDictionary *)propertyListFromStringsFileFormat;
NSString *str=@"<dict><key>name</key><string>nm</string><key>age</key><string>12</string></dict>";
id list=[str propertyList];
NSLog(@"list = %@",list);
NSDictionary *dict=[str propertyListFromStringsFileFormat];
NSLog(@"dict = %@",dict);
输出
2017-03-23 05:11:15.573 objc-base[4026:721173] list = {
age = 12;
name = nm;
}
2017-03-23 05:11:15.575 objc-base[4026:721173] dict = {
age = 12;
name = nm;
}
字符串翻译
- (nullable NSString *)stringByApplyingTransform:(NSStringTransform)transform
reverse:(BOOL)reverse
进行字符串的翻译工作。
参数transform表示翻译的方式,参数reverse是个BOOL类型,reverse为true时,可以反过来转换。
typedef NSString *NSStringTransform NS_EXTENSIBLE_STRING_ENUM;
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToKatakana
//拉丁文转片假名(日语)
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToHiragana
//拉丁文转平假名(日语)
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToHangul
//拉丁文转韩语
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToArabic
//拉丁文转阿拉伯语
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToHebrew
//拉丁文转希伯来语
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToThai
// 拉丁文转泰语
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToCyrillic
//拉丁文转西里尔语
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToGreek
//拉丁文转希腊语
FOUNDATION_EXPORT NSStringTransform const NSStringTransformToLatin
//转成拉丁文
FOUNDATION_EXPORT NSStringTransform const NSStringTransformMandarinToLatin
//普通话转拉丁文
FOUNDATION_EXPORT NSStringTransform const NSStringTransformHiraganaToKatakana
//平假名(日语)转片假名(日语)
FOUNDATION_EXPORT NSStringTransform const NSStringTransformFullwidthToHalfwidth
//全角转半角
FOUNDATION_EXPORT NSStringTransform const NSStringTransformToXMLHex
//转成XML十六进制字符
FOUNDATION_EXPORT NSStringTransform const NSStringTransformToUnicodeName
//为Unicode字符命名
FOUNDATION_EXPORT NSStringTransform const NSStringTransformStripCombiningMarks
//去掉结合符号(重音和变音符)
FOUNDATION_EXPORT NSStringTransform const NSStringTransformStripDiacritics
//去掉变音符
NSString *str=@"你好,世界!";
NSString *str1=[str stringByApplyingTransform:NSStringTransformToLatin reverse:NO];
NSLog(@"str = %@",str1);
输出
2017-03-23 05:31:29.850 objc-base[4063:733375] str = nǐ hǎo, shì jiè!
获取Unicode范式标准化字符串
获取Unicode范式D标准化字符串
@property (readonly, copy) NSString *decomposedStringWithCanonicalMapping;
获取Unicode范式KD标准化字符串
@property (readonly, copy) NSString *decomposedStringWithCompatibilityMapping;
获取Unicode范式C标准化字符串
@property (readonly, copy) NSString *precomposedStringWithCanonicalMapping;
获取Unicode范式KC标准化字符串
@property (readonly, copy) NSString *precomposedStringWithCompatibilityMapping;
NSString *str=@"你好,世界!";
NSLog(@"%@",[str decomposedStringWithCanonicalMapping]);
NSLog(@"%@",[str precomposedStringWithCanonicalMapping]);
NSLog(@"%@",[str decomposedStringWithCompatibilityMapping]);
NSLog(@"%@",[str precomposedStringWithCompatibilityMapping]);
输出
2017-03-24 04:54:59.130 objc-base[4156:738221] 你好,世界!
2017-03-24 04:54:59.132 objc-base[4156:738221] 你好,世界!
2017-03-24 04:54:59.157 objc-base[4156:738221] 你好,世界!
2017-03-24 04:54:59.158 objc-base[4156:738221] 你好,世界!
折叠字符串
- (NSString *)stringByFoldingWithOptions:(NSStringCompareOptions)options
locale:(nullable NSLocale *)locale