Cách so sánh chuỗi phân biệt chữ hoa chữ thường trong JavaScript

Cach So Sanh Chuoi Phan Biet Chu Hoa Chu Thuong Trong Javascript



Trong khi viết mã, một nhà phát triển thường có thể cần phải so sánh hai chuỗi để đảm bảo rằng các tác vụ cụ thể được hoàn thành. So sánh các chuỗi mà không chú ý đến các trường hợp của chúng chẳng hạn như các chữ cái viết hoa và viết thường được gọi là so sánh không phân biệt chữ hoa chữ thường. Nhiều ngôn ngữ hỗ trợ so sánh chuỗi với phân biệt chữ hoa chữ thường và không phân biệt.

Bài viết này sẽ minh họa các phương pháp so sánh phân biệt chữ hoa chữ thường của các chuỗi trong JavaScript.







Làm thế nào để so sánh chuỗi không phân biệt chữ hoa chữ thường trong JavaScript?

Để so sánh phân biệt chữ hoa chữ thường của các chuỗi trong JavaScript, hãy sử dụng các phương pháp xác định trước sau:



    • phương thức localeCompare ()
    • phương thức toUpperCase () và toLowerCase ()
    • Biểu thức chính quy với phương thức test ()

Chúng ta hãy xem xét hoạt động của từng cách tiếp cận được đề cập ở trên một cách riêng biệt.



Phương pháp 1: So sánh chuỗi không phân biệt chữ hoa chữ thường bằng phương pháp LocaleCompare ()

So sánh không phân biệt chữ hoa chữ thường của các chuỗi sử dụng “ localeCompare () ' phương pháp. Phương thức này trả về một số (dương, âm hoặc 0). Các chuỗi được so sánh theo thứ tự sắp xếp, nếu chuỗi tham chiếu dài hơn chuỗi so sánh hoặc nó đứng sau chuỗi được so sánh, nó sẽ cho một số dương. Nếu chuỗi tham chiếu ngắn hơn hoặc đứng trước chuỗi được so sánh, nó sẽ trả về một số âm. Một số 0 sẽ được trả về nếu chuỗi tham chiếu tương đương với chuỗi được so sánh.





Cú pháp

Làm theo cú pháp đã cho được cung cấp cho phương thức localeCompare ():



string1.localeCompare ( string2, ngôn ngữ, tùy chọn )


Nơi đây,

    • string2 ”Là chuỗi so sánh, trong đó chuỗi 1 sẽ được so sánh.
    • địa phương ”Là thẻ ngôn ngữ.
    • tùy chọn ”Là ngôn ngữ do người dùng cung cấp khi làm việc với nó.

Thí dụ

Tạo hai chuỗi “ string1 ' và ' string2 ”, Với chuỗi“ linuxhint ' và ' LinuxHint ' tương ứng:

var string1 = 'linux' ;
var string2 = 'LinuxHint' ;


So sánh chuỗi1 với chuỗi2 bằng cách sử dụng “ localeCompare () 'Và lưu trữ kết quả trong một biến' comp ”. Đối số thứ ba của phương thức sẽ được đặt là “ độ nhạy: 'cơ sở' ”Cho biết các ký tự cơ bản của chuỗi được so sánh không khác nhau:

var comp = string1.localeCompare ( string2, không xác định, { nhạy cảm: 'cơ sở' } )


Trong câu lệnh có điều kiện, hãy kiểm tra xem giá trị trả về của phương thức localeCompare () có tương đương với 0 hay không, nó sẽ in ra “ Các chuỗi bằng nhau ', khác, ' Các chuỗi không bằng nhau ”:

nếu ( comp == 0 ) {
console.log ( 'Các chuỗi bằng nhau' ) ;
} khác {
console.log ( 'Các chuỗi không bằng nhau' ) ;
}


Đầu ra

Phương pháp 2: So sánh chuỗi không phân biệt chữ hoa chữ thường bằng phương pháp toUpperCase () và toLowerCase ()

Các phương pháp được sử dụng nhiều nhất để so sánh các chuỗi phân biệt chữ hoa chữ thường là phương thức toUpperCase () hoặc phương thức toLowerCase (). Họ chuyển đổi các chuỗi thành chữ hoa hoặc chữ thường và sau đó so sánh chúng với sự trợ giúp của các toán tử bình đẳng nghiêm ngặt.

Cú pháp

Đối với phương thức toUpperCase (), hãy sử dụng phương thức sau:

string.toUpperCase ( ) ;


Sử dụng cú pháp bên dưới cho phương thức toLowerCase ().

string.toLowerCase ( ) ;


Ví dụ: So sánh chuỗi không phân biệt chữ hoa chữ thường bằng phương pháp toUpperCase ()

Hãy xem xét các chuỗi được tạo ở trên “ string1 ' và ' string2 ”Và sau đó so sánh chúng bằng phương thức toUpperCase () với toán tử bình đẳng nghiêm ngặt:

nếu ( string1.toUpperCase ( ) === string2.toUpperCase ( ) ) {
console.log ( 'Các chuỗi bằng nhau' ) ;
} khác {
console.log ( 'Các chuỗi không bằng nhau' ) ;
}


Đầu ra cho biết cả hai chuỗi đều bằng nhau bằng cách bỏ qua chữ hoa:


Ví dụ: So sánh chuỗi không phân biệt chữ hoa chữ thường bằng phương pháp toLowerCase ()

Ở đây, các chuỗi được so sánh bằng cách sử dụng phương thức toLowerCase () trước tiên sẽ chuyển đổi các chuỗi thành chữ thường và sau đó so sánh chúng bằng cách sử dụng toán tử ===:

nếu ( string1.toLowerCase ( ) === string2.toLowerCase ( ) ) {
console.log ( 'Các chuỗi bằng nhau' ) ;
} khác {
console.log ( 'Các chuỗi không bằng nhau' ) ;
}


Đầu ra tương ứng sẽ là:

Phương pháp 3: So sánh chuỗi phân biệt chữ hoa chữ thường bằng cách sử dụng biểu thức chính quy với phương pháp test ()

JavaScript được xác định trước “ kiểm tra() ”, Sử dụng một biểu thức chính quy, là một cách khác để so sánh hai chuỗi. Dựa trên regex được chỉ định, nó xác định xem các chuỗi có bằng nhau hay không.

Cú pháp

Làm theo cú pháp đã cho để sử dụng biểu thức chính quy để so sánh các chuỗi:

RegExp ( sợi dây, 'gi' )


Nơi đây,

    • RegExp ”Là viết tắt của“ biểu hiện thông thường ”.
    • g ”Là biến toàn cục cho phép kiểm tra tất cả các chuỗi.
    • tôi ”Là một biến cờ chỉ ra một trường hợp cần được bỏ qua trong khi sử dụng một chuỗi để khớp với mẫu.

Thí dụ

Đầu tiên, tạo một đối tượng mới của RegExp () bằng cách chuyển một chuỗi và biểu thức chính quy làm đối số:

var comp = new RegExp ( string1, 'gi' ) ;


So sánh các chuỗi bằng phương thức test ():

nếu ( comp.test ( string2 ) ) {
console.log ( 'Các chuỗi bằng nhau' ) ;
} khác {
console.log ( 'Các chuỗi không bằng nhau' ) ;
}


Đầu ra

Sự kết luận

Để so sánh các chuỗi không phân biệt chữ hoa chữ thường trong JavaScript, hãy sử dụng các phương thức được xác định trước trong JavaScript bao gồm phương thức localeCompare (), phương thức toUpperCase () và toLowerCase () hoặc phương thức test () với Biểu thức chính quy. Phương thức “toUpperCase () và toLowerCase ()” là phương pháp được sử dụng nhiều nhất để so sánh hai chuỗi phân biệt chữ hoa chữ thường. Bài viết này minh họa các cách khác nhau để so sánh phân biệt chữ hoa chữ thường của các chuỗi trong JavaScript.