假设我有一个随机电话号码NSString
,看起来像@"+33142981234"
我还从这样的服务器获得了一些电话号码格式的掩码:
mask = " (###) ###-###";
我应该怎么做才能根据掩码格式化数字?我想用 中的符号填写# NSString
。在 Obj-с 中是否有任何方便的方法可以做到这一点?
是否还有一种方法可以在将文本输入时即时执行UITextField
?
假设我有一个随机电话号码NSString
,看起来像@"+33142981234"
我还从这样的服务器获得了一些电话号码格式的掩码:
mask = " (###) ###-###";
我应该怎么做才能根据掩码格式化数字?我想用 中的符号填写# NSString
。在 Obj-с 中是否有任何方便的方法可以做到这一点?
是否还有一种方法可以在将文本输入时即时执行UITextField
?
我推荐使用 google libPhoneNumber 库。这里有一个 Objective-C 的端口:
https://github.com/me2day/libPhoneNumber-iOS
它具有各种出色的电话号码解析、格式化、验证等功能,使电话号码更容易。我将它用于我所有的移动应用程序。
您可以使用AKNumericFormatter库。它具有格式化程序和方便的 UITextField 类别,可作为 cocoapod 使用。
把它变成代码:
create an empty destination string that you can add characters to
start at index 0 in both strings (formatIndex = numberIndex = 0)
for each character (formatChar) in the format string
{
if formatChar is a '#'
{
find the next number character (numberChar)
add numberChar to the destination string
}
else
{
copy formatChar into the destination string
}
}