단지 숫자에 괄호를 제거 할 수 있지만 기본적으로 나는로부터 갈 문자열을 싶습니다, 나는 당신이 이것을 달성하기 위해 정규식을 사용할 필요가 거라고 상상
일부 텍스트 (123)
옛 성은 것일부 텍스트
그러나 :
에 같은 문자열을 유지하려면 Other text (Mixed123)
과 같은 문자열.
이 코드의 외관은 어떻습니까? 미리 감사드립니다!
단지 숫자에 괄호를 제거 할 수 있지만 기본적으로 나는로부터 갈 문자열을 싶습니다, 나는 당신이 이것을 달성하기 위해 정규식을 사용할 필요가 거라고 상상
일부 텍스트 (123)
옛 성은 것일부 텍스트
그러나 :
에 같은 문자열을 유지하려면 Other text (Mixed123)
과 같은 문자열.
이 코드의 외관은 어떻습니까? 미리 감사드립니다!
이삭의 대답은 올바른 방향으로 날 지점 도움이 있지만, 궁극적으로이 일 것입니다 :
NSError *error = nil;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"[(][0-9]+[)]" options:NSRegularExpressionCaseInsensitive error:&error];
name = [regex stringByReplacingMatchesInString:STRING options:0 range:NSMakeRange(0, [STRING length]) withTemplate:@""];
다음은 NSRegularExpression
클래스를 사용하는 예입니다. 이를 실행하기위한 코드는 비교적 간단합니다. 그러나, 나의 정규식 기술은 나의 가장 강한 소송이 아니므로, 나는 표현이 옳았기를 바란다. 희망이 도움이됩니다.
NSString *string = @"Some text (123)";
NSError *error;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"\([0-9]+\)"
options:NSRegularExpressionCaseInsensitive
error:&error];
if (error)
{
// Match failed, handle this.
}
NSArray *matches = [regex matchesInString:string
options:0
range:NSMakeRange(0, [string length])];
for (NSTextCheckingResult *match in matches)
{
NSRange *matchRange = [match range];
string = [string stringByReplacingCharactersInRange:matchRange withString:@""];
}
귀하의 대답은 올바른 방향으로 나를 도와주었습니다. 그러나 제게 도움이 된 코드로 답을 추가했습니다. –
도와 드리겠습니다. 나는 그 방법을 깨닫지 못했다. 그것을 능숙하게 단순화시킨다. –
어쩌면 정규식? –
NSScanner가 또 다른 옵션입니다. – vikingosegundo