2014-09-20 11 views
0

문자열에 영숫자 만 포함되어 있는지 확인하고 싶습니다 (문자와 숫자 만 가능). 은 내가이 NSString *string = @"[^a-zA-Z0-9]";을 시도문자열에 영숫자가 포함되어 있는지 확인하십시오.

NSCharacterSet *strCharSet = [NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"];를 사용하여 시도 = 운이

하지만 단지 확인 문자열은 모든 문자를 포함하지 않거나은이 문자가 포함 된 경우.하지 사용자가 문자와 숫자를 모두 입력해야합니다.

- 업데이트 비밀번호 용 텍스트 필드가 있습니다. 사용자가 문자와 암호를 모두 입력해야합니다. 그러나 텍스트 필드에 두 글자와 숫자가 포함되어 있는지 확인할 수는 없습니다. 위의 코드를 사용하여 텍스트 필드의 텍스트에 영숫자 만 포함되어 있는지 확인합니다.

+0

것은, 그것은, 그냥 입력 숫자에 대한 사용자를 같은 수 있도록 작품이 링크 http://stackoverflow.com/questions/7541803/allow-only-alphanumeric-characters-for-a-uitextfield –

+0

을 시도 내가 원하는 것은 사용자가 숫자와 문자를 입력해야한다는 것입니다. – MaappeaL

+0

확인하는 방법이나 수행하려는 내용을 알기에 충분한 코드가 실제로 표시되지 않았습니다. 또한 귀하의 접근 방식은 영어로만 제한되며 대부분의 다른 언어에서는 실패합니다. – uchuugaka

답변

8

숫자와 글자가 서로 다른지 확인해야합니다.

BOOL containsLetter = NSNotFound != [input rangeOfCharacterFromSet:NSCharacterSet.letterCharacterSet].location; 
BOOL containsNumber = NSNotFound != [input rangeOfCharacterFromSet:NSCharacterSet.decimalDigitCharacterSet].location; 

NSLog(@"Contains letter: %d\n Contains number: %d", containsLetter, containsNumber); 
관련 문제