[java] بحث سلسلة جافا يتجاهل لهجات


0 Answers

كولاتور لا يعود 0 ل و á، إذا كنت تكوينه لتجاهل التشكيل:

public boolean isSame(String a, String b) {
    Collator insenstiveStringComparator = Collator.getInstance();
    insenstiveStringComparator.setStrength(Collator.PRIMARY);
    // Collator.PRIMARY also works, but is case senstive
    return insenstiveStringComparator.compare(a, b) == 0;
}

إسام ("a"، "á") ينتج الآن

Question

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

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

فهل لدى أي شخص أي فكرة عن كيفية القيام بذلك؟




Related