cocoa - شرح - مطابقة سلسلة تقريبية في مخزن البيانات الأساسية



بين الفرق (2)

تريد أن يكون بحثك غير حساس لتتناسب مع 'é' في بنسي و 'ه' في بنسي. يمكنك الحصول على هذا عن طريق إضافة [d] بعد السمة. مثل ذلك:

    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(songTitle like[cd] %@)", yourSongSubstring];
و 'ج' في [سد] هو لحالة عدم الحساسية.

نظرا لأن السلسلة قد تظهر بأي ترتيب في السلسلة التي تبحث عنها، فيمكنك وضع سلسلة البحث الخاصة بك ([... كومبونينتسبيسترينغ: @ ""]) ثم إنشاء مسند مثل

    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(songTitle like[cd] %@) and (songTitle like[cd] %@)", songToken1, songToken2];
قد يكون بناء الجملة هذا للجمع بين المسارات أعلاه، الخروج من الذاكرة.

لدي مشكلة صغيرة مع تطبيق البيانات الأساسية أنا حاليا الكتابة. لدي اثنين من نماذج مختلفة، والسياقات ومخازن بيريستنت. واحد هو لبيانات التطبيق بلدي، والآخر هو لموقع على شبكة الإنترنت مع المعلومات ذات الصلة بالنسبة لي.

معظم الوقت، وأنا تطابق بالضبط سجل واحد من بلدي التطبيق إلى سجل آخر من مصدر آخر. في بعض الأحيان، لا بد لي من العودة إلى مطابقة سلسلة غامض لربط السجلات اثنين. أحاول مطابقة عناوين الأغاني. يمكن أن يكون "01 - 10 - French idealist in in you're pensee, The (dub remix, feat. DJ Objective-C)" المحلي هو (المكونة) "The French Idealist is in your pensée" ويمكن أن يكون عنوان الأغنية عن بعد "01 - 10 - French idealist in in you're pensee, The (dub remix, feat. DJ Objective-C)"

أنا البحث كومة تجاوز، جوجل، وثائق الكاكاو، وأنا لا يمكن العثور على أي إجابة واضحة حول كيفية القيام مطابقة غامض في هذه الحالات. يمكن أن تبدأ سلاسل بلدي مع أي شيء، يكون حفنة من الأحرف الخاصة، وعادة تنتهي مع عشوائي أو أن يتم تجاهل الأحرف.

سوف ريجيكس لا تفعل، ولا نبريديكاتس، سوندكس لا يعمل بشكل جيد مع الأسماء الأجنبية، وربما ليفنشتين لن يكون كافيا (أو سوف؟).

أنا أبحث عن عنوان في مجموعة من حوالي اثني عشر مباريات المحتملة، ولكن أنا هافا للقيام بهذه العملية الكثير جدا. 100٪ دقة ليست الهدف.

كنت أفكر في إزالة الكلمات المتجاهلة، واستخراج الكلمات الرئيسية (في هذا المثال، "الفرنسية، مثالية، بنسي")، تسلسل لهم، ومن ثم استخدام مسافة ليفنشتين (الكلمات في عنوان الأغنية يجب أن تكون في نفس الترتيب).

في حالتي الخاصة، هل ستعمل؟ ما هو معيار الصناعة فيما يتعلق بهذه المشكلة (لا أستطيع أن أكون الوحيدة في العالم الذين يرغبون في مطابقة أسماء الأغاني المختلفة قليلا) يمكن أن البيانات الأساسية، والكاكاو أو الهدف- C مساعدتي؟

شكرا جزيلا.


وأعتقد أن الأداة التي تريد استخدامها هنا هو سيرتشكيت . أقول كما لو كنت قد قمت بعملك بسهولة .... لم أكن، ولكن يجب أن يكون الأدوات التي تحتاجها لتكون ناجحة هنا. لنك لا تزال تقدم سيرتشكيت بودكاست مجانا (لطيفة جدا).

سيكون كل مسار وثيقة في هذه الحالة، وكنت بحاجة إلى التوصل إلى وسيلة جيدة لفهرسة لهم مع معرف التي يمكن استخدامها للعثور عليها. يمكنك بعد ذلك تحميلها مع البيانات الوصفية، والبحث فيها. ربما وضع عنوان "في" الوثيقة سيكون مفيدا هنا لتسهيل استخدام التشابه البحث ( kSKSearchOptionFindSimilar ). قد أو قد لا تعمل بشكل جيد حقا.

السؤال الذي طلبته هو جيد، ولكن ليس هناك بالتأكيد أي معيار الصناعة لذلك لأن أي شخص يحل هذه المشكلة بشكل جيد (أي كل محرك بحث رئيسي) يبقي خوارزمياتهم سرية جدا. هذه مشكلة صعبة؛ لا أحد على استعداد تام لإعطاء إجابتهم.





levenshtein-distance