我的问题是我有一些带有数字的文本字段,我必须将此数字转换为某种电话格式,例如(xxx) xxx-xxxx。我已经用这段代码尝试了一个正则表达式:
wholeText = [wholeText stringByReplacingOccurrencesOfString:@"(\\d{1,3})(\\d{0,3})(\\d{0,4})"
withString:@"($1) $2-$3"
options:NSRegularExpressionSearch
range:NSMakeRange(0, wholeText.length)];
NSLog(@"wholeText = %@", wholeText);
如果我逐渐在文本字段中输入文本,NSLog
输出以下内容:
wholeText = (1) -
wholeText = (12) -
wholeText = (123) -
wholeText = (123) 4-
wholeText = (123) 45-
wholeText = (123) 456-
wholeText = (123) 456-7
所以我的问题是如果前面没有数字,我不需要括号和连字符,即在我输入第 4 个数字后应该出现右括号,在我输入第 7 个数字后应该出现连字符。