1

假设我有一个随机电话号码NSString,看起来像@"+33142981234"

我还从这样的服务器获得了一些电话号码格式的掩码:

mask = " (###) ###-###";

我应该怎么做才能根据掩码格式化数字?我想用 中的符号填写# NSString。在 Obj-с 中是否有任何方便的方法可以做到这一点?

是否还有一种方法可以在将文本输入时即时执行UITextField

4

3 回答 3

2

我推荐使用 google libPhoneNumber 库。这里有一个 Objective-C 的端口:

https://github.com/me2day/libPhoneNumber-iOS

它具有各种出色的电话号码解析、格式化、验证等功能,使电话号码更容易。我将它用于我所有的移动应用程序。

于 2013-05-17T14:59:50.807 回答
1

您可以使用AKNumericFormatter库。它具有格式化程序和方便的 UITextField 类别,可作为 cocoapod 使用。

于 2013-11-06T15:31:50.150 回答
0

把它变成代码:

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
    }
}
于 2013-05-17T14:20:28.813 回答