سؤال

ولدي قائمة بأسماء المطار ومستخدمي موقعي لديهم إمكانية لإدخال اسم مطار واحد لتحديده لمعالجة futher.

وكيف يمكنك التعامل مع أسماء تحتوي على أخطاء إملائية وتقديم قائمة من اقتراحات؟

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

المحلول

وابحث عن Levenshtein مسافات لمطابقة الاسم الصحيح ضد إدخال المستخدم معينة.

نصائح أخرى

http://norvig.com/spell-correct.html
لا شيء من هذا القبيل levenshtein لكن، لأن هو لا يذهب كل في طريقه، على نحو أكثر كفاءة

وتوظيف موجة الاختيار في التعليمات البرمجية. يجب أن تحتوي قائمة الكلمات فقط هجاء الصحيحة من المطارات.

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

استخدم AJAX إذا تدعم التكنولوجيا الخاصة بك.

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

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

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

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

وتحرير: الدانماركية يضربني: (

وربما تكون هناك مكتبة التدقيق الإملائي القائمة التي يمكنك استخدامها. رمز للقيام بذلك النوع من الاشياء بشكل جيد وغير تافهة. إذا كنت لا تريد لكتابة هذا بنفسك، قد ترغب في النظر في TRIE القاموس في .

وأسلوب واحد التي قد تعمل هو توليد مجرد قائمة كبيرة من الكلمات الخطأ المحتملة والتصحيحات الخاصة بهم (وهنا ل<لأ href = "http://www.norvig.com/spell-correct.html" يختلط = "نوفولو noreferrer "> التنفيذ في بيثون )، والتي يمكن تخزين لزيادة الأداء.

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