2012-05-19 4 views
0

에 일부 단어를 찾을 방법이 코드에 문제가 : 나는 HTML 페이지에서 일부 단어 (문자열)를 찾으려면HTML 페이지

textRange = [[html lowercaseString] rangeOfString:[substring lowercaseString]]; 

합니다. 이 방법을 사용하면 "하위 문자열"에 정의 된 단어를 찾을 수 있지만 하위 문자열의 임의의 (제한되지 않은) 항목은 검색하지 않고 전체 단어 만 검색하려고합니다. 그래서 나는이 방법을 시도했지만 아무것도 변경되었습니다 :

textRange = [html rangeOfString:substring options:NSLiteralSearch]; 

가 여기에 전체 코드입니다 : 시작시

NSRange textRange; 
textRange = [[html lowercaseString] rangeOfString:[substring lowercaseString]]; 
if (textRange.location != NSNotFound) { 
    check++; 
} else { 
    // webView.hidden = NO; 
} 
+0

'[html rangeOfString : [NSString stringWithFormat : @ "% @", [string lowercaseString]]]'은 어떨까요? –

+0

많은 상황을 감지하지 못합니다. 예 : "

"은 내 문장의 '단어'또는 문단

'에서'이 ','단어 ','문장 '또는'단락 '을 찾을 수 없습니다. 정규 표현식처럼 보이거나, 'rangeOfString'을 사용하여 단어를 찾은 다음 알파벳이 알파벳이 아닌지 확인하기 위해 문자를 확인하면 훨씬 더 안전합니다. – Rob

+0

나는 또한'componentsSeparatedByCharactersInSet'을 사용하여 배열을 만들었습니다.하지만 특별한 경우 (더 짧은 문자열, 작은 구분자 세트 등)에 더 적합합니다. – Rob

답변

2

사용 NSRegularExpression 및 포함 \b과 패턴의 끝 단어 경계와 일치 할 수 있습니다.

+0

이것은 내 코드입니다. – keneseste