내 앱은 문자열 내에 URL이 포함되어 있거나 포함되지 않은 수많은 텍스트 문자열을 수신합니다. 문자열에서 URL을 추출하는 가장 좋은 방법은 무엇입니까? 고맙습니다.문자열 내에서 URL 추출
답변
The BSD-licensed AutoHyperlinks framework은 텍스트를 검색하여 URL을 검색하고 사용자에게 반환하거나 속성이 지정된 문자열의 링크로 표시하도록하는 클래스를 제공합니다.
아이폰 용으로 제작되지는 않았지만 항상 AppKit 의존적 코드를 없애기 위해 프리 프로세서 지시어를 추가 할 수 있습니다. 스캔 및 리턴 인터페이스는 일단 빌드하면 작동합니다. (테스트를 실행하십시오.)
Mac 응용 프로그램에서 작업하는 경우 Mac OS X 10.6은 맞춤법 검사기로 URL을 검색 할 수있는 새로운 API를 제공합니다. 당신은 이렇게 할 수 있습니다.
NSString *s = @"http://example.com"
NSInteger wordCount = 0;
NSOrthography *orthography = nil;
NSArray *checkResults = [[NSSpellChecker sharedSpellChecker] checkString:s range:NSMakeRange(0, [s length]) types:NSTextCheckingTypeLink options:nil inSpellDocumentWithTag:0 orthography:&orthography wordCount:&wordCount];
for (NSTextCheckingResult *result in checkResults) {
NSRange range = result.range;
NSURL *URL = result.URL;
}
가능한 경우 전용 프레임 워크를 가져 오는 것이 좋습니다. 보통 링크를 검색 할 때 정규 표현의 단어 수에 대해 실제로 신경 쓰지 않으므로 효율성을 위해'NULL' 포인터를 전달하십시오. –
또한 오픈 소스 KSFileUtilities 코드에서 구현했습니다. https://github.com/karelia/KSFileUtilities/commit/4ef561512fab9a169fcf63129037bfddfda6257b –
- 1. URL 부분 추출
- 2. PHP에서 URL 추출
- 3. XML 응답에서 URL 추출
- 4. 문자열 비교 및 변수 추출?
- 5. 문자열 내에서 문자열 찾기
- 6. C# ListView에서 문자열 추출
- 7. eExteranl에서 쿼리 문자열 추출
- 8. 단락에서 여러 문자열 추출
- 9. 부분 문자열 추출 연습
- 10. 인용문 사이에서 문자열 추출
- 11. 파이프 라인 문자열 추출
- 12. 데이터 추출 PHP 문자열
- 13. SQL 추출 부분 문자열
- 14. UIWebView의 페이지에서 피드 URL 추출
- 15. 문자열에서 데이터 (문자열) 추출 큰 문자열
- 16. HtmlHelper 내에서 URL 만들기
- 17. 코드에서 특정 문자열 만 추출
- 18. 단락에서 구분 된 문자열 추출
- 19. 자바 스크립트 코드에서 문자열 추출
- 20. VB.Net의 이진 파일에서 문자열 추출
- 21. 파이썬 - 추출 중요한 문자열 정보
- 22. 지정된 위치에서 부분 문자열 추출
- 23. Zend_Translate :보기에서 자동 추출 문자열
- 24. .odc 파일에서 연결 문자열 추출
- 25. jQuery 선택기에서 부분 문자열 추출
- 26. 두 문자 사이에서 문자열 추출
- 27. #define 세트에서 문자열 메시지 추출
- 28. iPhone에서 문자열 내에서 단일 바이트를 추출하려면 어떻게합니까?
- 29. 제거 URL 쿼리 문자열
- 30. Facebook 'Like'버튼과 # URL 문자열?
감사합니다, 나는이 있지만, 생성 된 오류 및 경고의 숫자로 판단, 그것은 아이폰에이 작업 얻기 위해 상당한 양의 작업이 필요합니다 시도 - – RunLoop
JK를 : 그것은 오해의 소지가있을 수 있습니다. 한 줄의 코드는 충분히 편집 할 수없는 경우 많은 오류를 생성 할 수 있지만 여전히 한 줄의 코드입니다. AutoHyperlinks의 AppKit 종속적 인 부분은 충분히 쉽게 분리 될 수 있다고 생각됩니다. –
베드로 감사합니다. 나는 패치를 내일 시험해 볼 것이다. – RunLoop