iOS正则去除所有符号

来源:互联网 发布:新浪微博域名是什么 编辑:程序博客网 时间:2024/05/16 06:24

最近做的应用需要用到极光推送的标签,应用中的一些需要设置标签的字段是用户自己输入的,但是在极光上对设置标签有特殊符号的限制,所以自己做了一些处理,仅供参考!

-(NSString *)deleteIllegalCharWith:(NSString *)searchStr

{

    NSString *replaceUnderline=[searchStrstringByReplacingOccurrencesOfString:@"_"withString:@" "];//将下划线剔除出来

    NSError *error =nil;

    NSRegularExpression *regex = [NSRegularExpressionregularExpressionWithPattern:@"[\\p{P}~^<>]"options:NSRegularExpressionCaseInsensitiveerror:&error];//这个正则可以去掉所有的符号,空格除外

    NSString *modifiedString = [regexstringByReplacingMatchesInString:replaceUnderlineoptions:0range:NSMakeRange(0, [replaceUnderlinelength]) withTemplate:@""];

    NSString *replaceBlank=[modifiedStringstringByReplacingOccurrencesOfString:@" "withString:@"_"];//再将空格转化成下划线,因为空格也不可以设置标签

    return replaceBlank;

}



0 0
原创粉丝点击