Pencocokan String Javascript ()

Metode JavaScript String match () mengembalikan hasil pencocokan string dengan ekspresi reguler.

Sintaks dari match()metode ini adalah:

 str.match(regexp)

Di sini, str adalah string.

match () Parameter

The match()Metode mengambil di:

  • regexp - Objek ekspresi reguler (Argumen secara implisit diubah menjadi RegExpjika itu bukan RegExpobjek)

Catatan: Jika Anda tidak memberikan parameter apa pun, match()kembalikan ("").

Kembalikan nilai dari pertandingan ()

  • Mengembalikan Arrayberisi pertandingan, satu item untuk setiap pertandingan.
  • Kembali nulljika tidak ada yang cocok.

Contoh 1: Menggunakan match ()

 const string = "I am learning JavaScript not Java."; const re = /Java/; let result = string.match(re); console.log("Result of matching /Java/ :"); console.log(result); const re1 = /Java/g; let result1 = string.match(re1); console.log("Result of matching /Java/ with g flag:") console.log(result1);

Keluaran

 Hasil pencocokan / Java /: ('Java', index: 14, input: 'Saya belajar JavaScript bukan Java.', Grup: tidak ditentukan) Hasil pencocokan / Java / dengan tanda g: ('Java', 'Java' )

Di sini, kita dapat melihat bahwa tanpa menggunakan gflag, kita hanya mendapatkan hasil pertandingan pertama tetapi dengan informasi rinci seperti indeks, input, dan grup.

Catatan : Jika ekspresi reguler tidak menyertakan gbendera, str.match()hanya akan mengembalikan kecocokan pertama yang mirip dengan RegExp.exec(). Item yang dikembalikan juga akan memiliki properti tambahan berikut:

  • groups - Sebuah objek dari kelompok penangkap bernama memiliki kunci sebagai nama dan nilai sebagai pertandingan yang diambil.
  • index - Indeks pencarian tempat hasil ditemukan.
  • input - Salinan string pencarian.

Contoh 2: Mencocokkan bagian dalam string

 const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) const re = /namesiss(a-zA-Z)+./gi; let result = string.match(re); console.log(result); // ( 'name is Albert.', 'NAME is Soyuj.' ) // using named capturing groups const re1 = /namesiss(?(a-zA-Z)+)./i; let found = string.match(re1); console.log(found.groups); // (name: "Albert")

Keluaran

 ('name is Albert.', 'NAME is Soyuj.') (nama: "Albert")

Di sini, kami telah menggunakan ekspresi reguler untuk mencocokkan bagian tertentu dari string. Kami juga dapat menangkap grup tertentu dalam pertandingan menggunakan sintaks seperti yang ditunjukkan di atas.

Bacaan yang Disarankan: JavaScript String matchAll ()

Artikel yang menarik...