由于维护用户个人隐私,我们会在用户登陆后,将用户名为电话号码的进行局部隐藏,解决思路,判断昵称是否符合电话号码的正则表达式,符合就替换局部字符。
<textarea readonly="readonly" name="code" class="Objective-C">
NSString *phoneStr = @"13255670078";
NSString *regex = @"^((13[0-9])|(147)|(15[^4,\\D])|(18[0,5-9]))\\d{8}$";
NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
BOOL isMatch = [pred evaluateWithObject:phoneStr];
if (isMatch) {
NSMutableString *str = [[NSMutableString alloc]initWithString:nickName];
[str replaceCharactersInRange:NSMakeRange(3, 4) withString:@"****"];
self.phoneLabel.text = str;
}
<textarea readonly="readonly" name="code" class="Objective-C">
</textarea>