정규 표현 식 사용 iOS
사용자 가 입력 한 문자열 이 합 법 적 인지 판단 하기 위해 사용 합 니 다:
// : ,
NSString *regex = @"^[a-z0-9A-Z]*$";
//
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
//
NSString *str = @"Hello100";
//
if ([predicate evaluateWithObject:str]) { NSLog(@"Match");}
방법 2. NSRegularExpression 클래스 에서 정규 표현 식 을 만 듭 니 다.
앞에서 도 말 했 듯 이 우 리 는 정규 로 우리 가 원 하 는 특정한 부분 을 걸 러 내 고 얻 을 수 있 으 며 실현 방법 도 간단 하 다. NSRegular Expression 과 같은 실현 을 사용 할 수 있다.
NSString *url = @"[email protected]";NSError *error;
// NSRegularExpression
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"[^@]*\\." options:0 error:&error];
if (!error) { // //
NSTextCheckingResult *match = [regex firstMatchInString:url options:0 range:NSMakeRange(0, [url length])];
if (match) { //
NSString *result = [url substringWithRange:match.range];
NSLog(@"%@",result);
}} else { // ,
NSLog(@"error - %@", error);
}
방법 3. NSRegular Expression 류 의 캡 처 여러 결과
문자열 에 특정 규칙 에 맞 는 문자 가 여러 개 있 으 면 특정한 규칙 에 맞 는 문 자 를 각각 가 져 올 수 있 습 니 다.
NSString *regex = @"\\-\\d*\\.";
NSString *str = @"-34023242.-34203020.";
NSError *error;
NSRegularExpression *regular = [NSRegularExpression regularExpressionWithPattern:regex options:NSRegularExpressionCaseInsensitive error:&error];
// str
NSArray *matches = [regular matchesInString:str options:0 range:NSMakeRange(0, str.length)];
//
for (NSTextCheckingResult *match in matches) {
NSRange range = [match range];
NSString *mStr = [str substringWithRange:range];
NSLog(@"%@", mStr);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.