ما هو أفضل نهج القيام البحث عن الكلمات الرئيسية في نص الملعب ؟

StackOverflow https://stackoverflow.com/questions/619107

سؤال

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

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

foreach (Image image in Images)
{
    foreach (string keyword in keywords)
    {
        if (image.Caption.Contains(keyword))
        {
            imageCollection.Add(image);
            break;
        }
    }
}

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

أشعر Regex ينبغي أن تستخدم هنا ولكن أنا لا Regex الخبراء.أو ينبغي أن يكون كسر التوضيحية في الكلمات الفردية ومعالجة المقارنة على الكلمات واحدة تلو الأخرى.تبحث عن بعض الاقتراحات حقا!

أنا أكتب في c# ولكن يمكن أن تكون اللغة الملحد أعتقد

تحرير:أنا أيضا مهتمة جدا في الترجيح على أساس عدد الكلمات المتطابقة.ولكن أنا لا أحاول إعادة جوجل الصور هنا!

هل كانت مفيدة؟

المحلول

ربما أفضل طريقة للقيام بذلك سيكون لاستخدام فهرس النص الكامل في الحقل تسمية توضيحية في قاعدة البيانات.تتيح قاعدة البيانات للقيام بهذا العمل بالنسبة لك!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top