Tôi gặp sự cố nhỏ với ứng dụng dữ liệu lõi mà hiện tại tôi đang viết. Tôi có hai mô hình differents, bối cảnh và các cửa hàng phù hợp. Một là cho dữ liệu ứng dụng của tôi, một trong những khác là cho một trang web với infos có liên quan với tôi.Kết hợp một chuỗi gần đúng trong kho dữ liệu chính
Hầu hết thời gian, tôi khớp chính xác một bản ghi từ ứng dụng của tôi với một bản ghi khác từ nguồn khác. Đôi khi tuy nhiên, tôi phải dự phòng để phù hợp chuỗi mờ để liên kết hai bản ghi. Tôi đang cố gắng phù hợp với tiêu đề bài hát. Tiêu đề địa phương của tôi có thể là (được tạo thành) "The French Idealist is in your pensée"
và tiêu đề bài hát từ xa có thể là "01 - 10 - French idealist in in you're pensee, The (dub remix, feat. DJ Objective-C)"
Tôi chặn tìm kiếm chồng, Google, tài liệu ca cao và tôi không thể tìm thấy câu trả lời rõ ràng về cách thực hiện đối sánh mờ trong những trường hợp này. Chuỗi của tôi có thể bắt đầu bằng bất kỳ thứ gì, có một loạt các ký tự đặc biệt, thường kết thúc bằng các ký tự ngẫu nhiên hoặc bị bỏ qua.
Regexp sẽ không thực hiện, cũng như NSPredicates, Soundex không hoạt động tốt với tên nước ngoài, và có lẽ Levenshtein sẽ không đủ (hoặc sẽ không?).
Tôi đang tìm kiếm một tiêu đề trong một tập hợp khoảng một chục trận đấu tiềm năng, nhưng tôi hava để thực hiện thao tác này khá nhiều. Độ chính xác 100% không phải là mục tiêu.
Tôi đã nghĩ đến việc xóa các từ bị bỏ qua, trích xuất các từ khóa (trong ví dụ này là "french, idealist, pensée"), nối chúng, và sau đó sử dụng khoảng cách Levenshtein (các từ trong tiêu đề bài hát phải theo cùng thứ tự).
Trong trường hợp đặc biệt của tôi, nó có hoạt động không? Tiêu chuẩn của ngành về vấn đề này là gì (tôi không thể là người duy nhất trên thế giới muốn kết hợp các tên bài hát hơi khác nhau) Core Data, Cocoa hay Objective-C có thể giúp tôi không?
Thanks a lot.
Vâng, trước tiên tôi đã thử một biến thể của điều này và khi tôi phân tích cú pháp dữ liệu thế giới thực, nó không hoạt động. Hầu hết thời gian, vấn đề không phải là dấu phụ hoặc trường hợp nhưng trong sự khác biệt rõ ràng được đánh vần (như trong "Backstreet girl" vs "Back Street Girl"). Giải pháp này cũng phụ thuộc nhiều vào bước trước, mã thông báo, điều này thực sự khó cho miền "từ có thể xuất hiện trong tiêu đề bài hát" – damdamdam