如何验证字符串是否为字母数字

时间:2012-01-14 05:33:17

标签: iphone objective-c ios xcode

看起来很简单,但我找不到解决方法。在我的应用程序中,我有很多UITextField个。例如,假设我有一个名为UITextField的{​​{1}}。当我在textField中输入一个字符串时,我应该验证字符串是否是字母数字。我怎么能这样做?

除了textField之外,我还有一个按钮。进入textField后,当我按下按钮时,我应通过显示textField来验证输入的字符串是否为字母数字。那么有人可以通过一些示例或示例代码帮助我解决这个问题吗?

2 个答案:

答案 0 :(得分:5)

您可以尝试以下操作 -

NSString *string = myTextField.text;
NSCharacterSet *alphanumericSet = [NSCharacterSet alphanumericCharacterSet];
NSCharacterSet *numberSet = [NSCharacterSet decimalDigitCharacterSet];
BOOL isAplhaNumericOnly= [[string stringByTrimmingCharactersInSet:alphanumericSet] isEqualToString:@""] && ![[string stringByTrimmingCharactersInSet:numberSet] isEqualToString:@""];

只有当您的字符串是字母数字且不是数字时,此bool才会返回true。

EDITED: -

记录bool -

NSLog(@"isAplhaNumericOnly: %d",isAplhaNumericOnly);

从此功能返回 -

if(isAplhaNumericOnly) {
    return;
}

此外,如果您想显示一些警报,那么您可以编写代码以在return语句上方显示警报。

答案 1 :(得分:1)

您可以像这样使用NSLog BOOL值。

NSLog(@"Bool Value: %@",(isAplhaNumericOnly?@"YES":@"NO"));