Ekspresi Reguler JavaScript
Ekspresi reguler adalah urutan karakter yang membentuk pola pencarian.
Pola pencarian dapat digunakan untuk operasi pencarian teks dan penggantian teks.
Apa Itu Ekspresi Reguler?
Ekspresi reguler adalah urutan karakter yang membentuk pola pencarian .
Saat Anda mencari data dalam teks, Anda dapat menggunakan pola pencarian ini untuk menjelaskan apa yang Anda cari.
Ekspresi reguler dapat berupa karakter tunggal, atau pola yang lebih rumit.
Ekspresi reguler dapat digunakan untuk melakukan semua jenis pencarian teks dan operasi penggantian teks .
Sintaksis
/pattern/modifiers;
Contoh
/w3schools/i;
Contoh menjelaskan:
/w3schools/i adalah ekspresi reguler.
w3schools adalah sebuah pola (untuk digunakan dalam pencarian).
i adalah pengubah (memodifikasi pencarian menjadi case-insensitive).
Menggunakan Metode String
Dalam JavaScript, ekspresi reguler sering digunakan dengan dua metode string : search()
dan replace()
.
Metode search()
ini menggunakan ekspresi untuk mencari kecocokan, dan mengembalikan posisi kecocokan.
Metode replace()
mengembalikan string yang dimodifikasi di mana polanya diganti.
Menggunakan pencarian String() Dengan String
Metode search()
ini mencari string untuk nilai tertentu dan mengembalikan posisi kecocokan:
Contoh
Gunakan string untuk melakukan pencarian "W3schools" dalam string:
let text = "Visit W3Schools!";
let n = text.search("W3Schools");
Hasilnya di n adalah:
6
Menggunakan Pencarian String() Dengan Ekspresi Reguler
Contoh
Gunakan ekspresi reguler untuk melakukan pencarian case-insensitive untuk "w3schools" dalam sebuah string:
let text = "Visit W3Schools";
let n = text.search(/w3schools/i);
Hasilnya di n adalah:
6
Menggunakan String replace() Dengan String
Metode replace()
menggantikan nilai tertentu dengan nilai lain dalam string:
let text = "Visit Microsoft!";
let result = text.replace("Microsoft", "W3Schools");
Gunakan String replace() Dengan Regular Expression
Contoh
Gunakan ekspresi reguler case-insensitive untuk menggantikan Microsoft dengan W3Schools dalam sebuah string:
let text = "Visit Microsoft!";
let result = text.replace(/microsoft/i, "W3Schools");
Hasil di res akan menjadi:
Visit W3Schools!
Apakah kamu menyadari?
Argumen ekspresi reguler (bukan argumen string) dapat digunakan dalam metode di atas.
Ekspresi reguler dapat membuat pencarian Anda jauh lebih kuat (misalnya tidak peka huruf besar-kecil).
Pengubah Ekspresi Reguler
Pengubah dapat digunakan untuk melakukan pencarian global yang lebih peka huruf besar/kecil:
Modifier | Description | Try it |
---|---|---|
i | Perform case-insensitive matching | |
g | Perform a global match (find all matches rather than stopping after the first match) | |
m | Perform multiline matching |
Pola Ekspresi Reguler
Tanda kurung digunakan untuk menemukan berbagai karakter:
Expression | Description | Try it |
---|---|---|
[abc] | Find any of the characters between the brackets | |
[0-9] | Find any of the digits between the brackets | |
(x|y) | Find any of the alternatives separated with | |
Metakarakter adalah karakter dengan arti khusus:
Metacharacter | Description | Try it |
---|---|---|
\d | Find a digit | |
\s | Find a whitespace character | |
\b | Find a match at the beginning of a word like this: \bWORD, or at the end of a word like this: WORD\b |
|
\uxxxx | Find the Unicode character specified by the hexadecimal number xxxx |
Quantifier mendefinisikan kuantitas:
Quantifier | Description | Try it |
---|---|---|
n+ | Matches any string that contains at least one n | |
n* | Matches any string that contains zero or more occurrences of n | |
n? | Matches any string that contains zero or one occurrences of n |
Menggunakan Objek RegExp
Dalam JavaScript, objek RegExp adalah objek ekspresi reguler dengan properti dan metode yang telah ditentukan sebelumnya.
Menggunakan tes()
Metodenya adalah test()
metode ekspresi RegExp.
Itu mencari string untuk sebuah pola, dan mengembalikan benar atau salah, tergantung pada hasilnya.
Contoh berikut mencari string untuk karakter "e":
Contoh
const pattern = /e/;
pattern.test("The best things in life are free!");
Karena ada "e" dalam string, output dari kode di atas adalah:
true
Anda tidak harus meletakkan ekspresi reguler dalam variabel terlebih dahulu. Dua baris di atas dapat dipersingkat menjadi satu:
/e/.test("The best things in life are free!");
Menggunakan exec()
Metodenya adalah exec()
metode ekspresi RegExp.
Ini mencari string untuk pola tertentu, dan mengembalikan teks yang ditemukan sebagai objek.
Jika tidak ada kecocokan yang ditemukan, ia mengembalikan objek kosong (null) .
Contoh berikut mencari string untuk karakter "e":
Contoh
/e/.exec("The best things in life are free!");
Referensi RegExp Lengkap
Untuk referensi lengkap, buka Referensi RegExp JavaScript Lengkap kami .
Referensi berisi deskripsi dan contoh semua properti dan metode RegExp.