2011-12-13 3 views
2

iOS 앱을 만들고 있습니다. 회사 이름이 많은 핵심 데이터베이스가 있습니다.구현 "구현하셨습니까?" 핵심 데이터 포함

사용자가 존재하지 않는 회사 이름을 삽입하면 "비슷한"회사 이름을 표시하려고합니다. 예를 들어 사용자가 "Aple"을 입력 한 경우 "Apple을 의미 했습니까?"라고 표시하려고합니다.

나는 약 패턴과 일치하는 문자열을 찾는 기술 (보다는 정확히)가 구어체, 퍼지 문자열 검색 대략 일치하는 문자열 또는라는 것을 알고있다.

이론 상으로는 많은 알고리즘이 있습니다 : Levenshtein 거리 계산 알고리즘 등등.

실제로는 이미 코어 데이터를 사용할 수있는 비슷한 것을 구현 한 사람이 있습니까?

답변

0

Soundex를 살펴 보겠습니다. 이것이 기본 데이터 저장소 인 경우 SQLite의 핵심 기능 세트의 일부라고 생각합니다.

+0

Soundex는 영어로만 작동하며, 대부분의 유럽 언어에서 이중 메타 폰으로 작동합니다. 하지만 SQLite가이를 지원할 것이라고 생각하지 않습니다. 따라서 ou는 먼저 값을 계산하여 검색해야 할 수도 있습니다. – rckoenes

+1

Soundex는 SQLite가 빌드 될 때 SQLITE_SOUNDEX 컴파일 타임 옵션이 사용되는 경우에만 사용할 수 있습니다. 내가 잘못하지 않았다면, iOS Sqlite는 Soundex를 가지고 있지 않으며 (어떤 경우에도 Core Data와 함께 사용하기가 쉽지 않을 것입니다) ... – Dev