כיצד להשוות מחרוזות חסרות רישיות ב-JavaScript

Kyzd Lhswwt Mhrwzwt Hsrwt Rysywt B Javascript



בזמן כתיבת הקוד, ייתכן שלעתים קרובות מפתח יצטרך להשוות בין שתי מחרוזות כדי להבטיח שהמשימות הספציפיות יושלמו. השוואת מחרוזות מבלי לשים לב למקרים שלהן, כגון אותיות גדולות ואותיות קטנות, ידועה כהשוואה חסרת רגישות לאותיות גדולות. שפות רבות תומכות בהשוואת מחרוזת עם רגישות רישיות וחוסר רגישות.

מאמר זה ימחיש את השיטות להשוואה לא תלוית רישיות של מחרוזות ב-JavaScript.







כיצד להשוות מחרוזות חסרות רישיות ב-JavaScript?

להשוואה לא תלוית רישיות של מחרוזות ב-JavaScript, השתמש בשיטות המוגדרות מראש הבאות:



    • שיטת localeCompare().
    • שיטת toUpperCase() ו-toLowerCase().
    • ביטוי רגולרי עם שיטת test()

הבה נבחן את פעולתה של כל אחת מהגישות שהוזכרו לעיל בנפרד.



שיטה 1: השוואת מחרוזת חסרת רישיות באמצעות שיטת LocaleCompare()

ההשוואה חסרת הרישיות של מחרוזות משתמשת ב-' localeCompare() ' שיטה. שיטה זו מחזירה מספר (חיובי, שלילי או אפס). המחרוזות מושוות בסדר מיון, אם מחרוזת ההפניה ארוכה ממחרוזת ההשוואה או שהיא באה אחרי המחרוזת בהשוואה, היא נותנת מספר חיובי. אם מחרוזת ההפניה קצרה יותר, או מגיעה לפני המחרוזת בהשוואה, היא מחזירה מספר שלילי. יש להחזיר אפס אם מחרוזת ההפניה שווה למחרוזת בהשוואה.





תחביר

בצע את התחביר הנתון עבור שיטת localeCompare():



string1.localeCompare ( string2, locales, options )


כאן,

    • ' מחרוזת 2 ” היא מחרוזת ההשוואה, שבה תושווה מחרוזת 1.
    • ' מְקוֹמִי ' הוא תג השפה.
    • ' אפשרויות ' הם המקום שסופק על ידי המשתמש בזמן העבודה איתו.

דוגמא

צור שתי מחרוזות ' מחרוזת 1 ' ו' מחרוזת 2 ', עם מחרוזות' לינוקס ' ו' לינוקס רמז ' בהתאמה:

var string1 = 'לינוקס' ;
var string2 = 'LinuxHint' ;


השווה string1 עם string2 באמצעות ' localeCompare() ' שיטת ואחסן את התוצאה במשתנה ' comp '. הארגומנט השלישי של השיטה יקבע כ' רגישות: 'בסיס' ' המציין כי אותיות הבסיס של המחרוזות אינן שונות:

var comp = string1.localeCompare ( מחרוזת 2, לא מוגדרת, { רְגִישׁוּת: 'בסיס' } )


במשפט מותנה, בדוק אם הערך המוחזר של שיטת localeCompare() שווה ערך לאפס, הוא מדפיס ' מיתרים שווים ', אחר, ' מיתרים אינם שווים ”:

אם ( comp == 0 ) {
console.log ( 'מיתרים שווים' ) ;
} אַחֵר {
console.log ( 'מיתרים אינם שווים' ) ;
}


תְפוּקָה

שיטה 2: השוואת מחרוזות חסרות רישיות באמצעות שיטת toUpperCase() ו-toLowerCase()

הגישות הנפוצות ביותר להשוואת מחרוזות שאינן תלויות רישיות הן השיטה toUpperCase() או toLowerCase() Method. הם ממירים את המחרוזות לאותיות גדולות או קטנות ולאחר מכן משווים אותן בעזרת מפעילי שוויון קפדניים.

תחביר

עבור שיטת toUpperCase() השתמש בשיטה הבאה:

string.toUpperCase ( ) ;


השתמש בתחביר שלהלן עבור שיטת toLowerCase() .

string.toLowerCase ( ) ;


דוגמה: השוואת מחרוזת חסרת רישיות באמצעות שיטת toUpperCase()

שקול את המחרוזות שנוצרו לעיל ' מחרוזת 1 ' ו' מחרוזת 2 ' ולאחר מכן השווה אותם באמצעות שיטת toUpperCase() עם אופרטור שוויון קפדני:

אם ( string1.toUpperCase ( ) === string2.toUpperCase ( ) ) {
console.log ( 'מיתרים שווים' ) ;
} אַחֵר {
console.log ( 'מיתרים אינם שווים' ) ;
}


הפלט מציין ששתי המחרוזות שוות על ידי התעלמות מרישיות:


דוגמה: השוואת מחרוזת חסרת רישיות באמצעות שיטת toLowerCase()

כאן, המחרוזות מושוות באמצעות שיטת toLowerCase() שתמיר תחילה את המחרוזות לאותיות קטנות ולאחר מכן תשווה אותן באמצעות האופרטור ===:

אם ( string1.toLowerCase ( ) === string2.toLowerCase ( ) ) {
console.log ( 'מיתרים שווים' ) ;
} אַחֵר {
console.log ( 'מיתרים אינם שווים' ) ;
}


הפלט המתאים יהיה:

שיטה 3: השוואת מחרוזת חסרת רישיות באמצעות ביטוי רגולרי עם שיטת test()

JavaScript המוגדר מראש ' מִבְחָן() שיטת ', המשתמשת בביטוי רגולרי, היא דרך נוספת להשוות בין שתי מחרוזות. בהתבסס על הביטוי הרגולרי שצוין, הוא קובע אם מחרוזות שוות או לא.

תחביר

פעל לפי התחביר הנתון לשימוש בביטוי רגולרי כדי להשוות בין המחרוזות:

RegExp ( חוּט, 'גי' )


כאן,

    • ' RegExp ' מייצג ' הבעה רגילה '.
    • ' ז ” הוא המשתנה הגלובלי המאפשר לבדוק את כל המחרוזות.
    • ' אני ” הוא משתנה דגל המציין שיש להתעלם מרישיות בעת שימוש במחרוזת כדי להתאים את התבנית.

דוגמא

ראשית, צור אובייקט חדש של ה-RegExp() על ידי העברת מחרוזת והביטוי הרגולרי כארגומנט:

var comp = new RegExp ( מחרוזת 1, 'גי' ) ;


השווה את המחרוזות באמצעות שיטת test():

אם ( comp.test ( מחרוזת 2 ) ) {
console.log ( 'מיתרים שווים' ) ;
} אַחֵר {
console.log ( 'מיתרים אינם שווים' ) ;
}


תְפוּקָה

סיכום

כדי להשוות מחרוזות שאינן תלויות רישיות ב-JavaScript, השתמש בשיטות המוגדרות מראש של JavaScript, כולל שיטת localeCompare(), שיטת toUpperCase() ו-toLowerCase() או שיטת test() עם ביטוי רגיל. שיטות 'toUpperCase() ו-toLowerCase()' הן הגישה הנפוצה ביותר להשוואה בין שתי מחרוזות שאינן תלויות רישיות. מאמר זה הדגים את הדרכים השונות להשוואה לא תלוית רישיות של מחרוזות ב-JavaScript.