iOS正则去除所有符号

本文介绍了一种在iOS应用中使用正则表达式删除用户输入中的非法字符,尤其是为了配合极光推送标签功能,需要去除包括下划线在内的各种特殊符号。提供的方法可以将下划线替换为空格,再使用正则表达式移除所有其他特殊符号,最后将空格转回为下划线。
摘要由CSDN通过智能技术生成

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

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

{

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

    NSError *error = nil;

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

    NSString *modifiedString = [regex stringByReplacingMatchesInString:replaceUnderline options:0 range:NSMakeRange(0, [replaceUnderline length]) withTemplate:@""];

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

    return replaceBlank;

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值