Karakter normal terdiri dari semua karakter yang dicetak dan tidak dicetak yang tidak secara eksplisit ditentukan sebagai metacharacters. Ini termasuk semua karakter alfabet huruf besar dan huruf kecil, semua angka, semua tanda baca, dan beberapa simbol.
Ekspresi reguler paling sederhana adalah karakter normal tunggal yang cocok dengan karakter itu sendiri dalam string yang dicari. Misalnya, pola karakter tunggal 'A' dapat mencocokkan huruf 'a' yang muncul di mana saja dalam string yang dicari. Berikut adalah beberapa contoh pola ekspresi reguler karakter tunggal:
/a/ /7/ /M/Ekspresi reguler karakter tunggal VBScript yang setara adalah:
a 7 MBeberapa karakter tunggal dapat digabungkan bersama untuk mendapatkan ekspresi yang lebih besar. Misalnya, ekspresi reguler JScript berikut tidak lain, tetapi ekspresi yang dibuat dengan menggabungkan ekspresi karakter tunggal 'A', '7' dan 'M'.
/a7M/Ekspresi VBScript yang setara adalah:
a7MHarap dicatat bahwa tidak ada operator koneksi di sini. Yang perlu Anda lakukan adalah menempatkan satu karakter di belakang karakter lain.
Ada banyak metacharacters yang membutuhkan pemrosesan khusus saat mencoba mencocokkannya. Untuk mencocokkan karakter khusus ini, Anda harus terlebih dahulu menghindarinya, yaitu, menggunakan backslash (/) di depannya. Tabel berikut memberikan karakter khusus ini dan artinya:
| Karakter Khusus | menjelaskan |
|---|---|
| $ | Cocok dengan posisi akhir dari string input. Jika properti multilin dari objek RegExp diatur, $ juga cocok dengan '/n' atau '/r'. Untuk mencocokkan karakter $ itu sendiri, gunakan /$. |
| () | Menandai posisi awal dan akhir dari sub -ekspresi. Subekspresi dapat diperoleh untuk digunakan nanti. Untuk mencocokkan karakter ini, gunakan /(dan /). |
| * | Cocok dengan subspresi nol sebelumnya atau beberapa kali. Untuk mencocokkan karakter *, gunakan / *. |
| + | Cocok dengan subekspresi sebelumnya sekali atau lebih kali. Untuk mencocokkan karakter +, gunakan / +. |
| . | Cocokkan karakter tunggal kecuali line break/n. Untuk mencocokkan., Gunakan /. |
| [ | Tandai awal ekspresi braket. Untuk mencocokkan [, gunakan /[. |
| ? | Cocokkan nol subspresi sebelumnya atau sekali, atau menunjukkan kualifikasi non-greedy. Untuk mencocokkan karakter? |
| / | Tandai karakter berikutnya sebagai karakter khusus, atau karakter primitif, atau referensi mundur, atau karakter pelarian oktal. Misalnya, 'n' cocok dengan karakter 'n'. '/n' cocok dengan karakter garis baru. Urutan '//' cocok/, dan '/(' cocok (. |
| ^ | Cocokkan posisi mulai dari string input kecuali digunakan dalam ekspresi braket persegi, pada titik mana itu berarti bahwa koleksi karakter tidak diterima. Untuk mencocokkan karakter itu sendiri, gunakan / ^. |
| { | Tandai awal dari ekspresi kualifikasi. Untuk mencocokkan {, gunakan /{. |
| | | Tentukan pilihan antara dua item. Untuk mencocokkan |, gunakan /|. |
Ada banyak karakter non-cetak yang berguna yang harus digunakan sesekali. Tabel berikut menunjukkan urutan pelarian yang digunakan untuk mewakili karakter yang tidak dicetak ini:
| karakter | arti |
|---|---|
| /c x | Cocok dengan karakter kontrol yang ditentukan oleh x . Misalnya, /cm cocok dengan control-M atau carriage return. Nilai x harus salah satu dari AZ atau AZ. Jika tidak, perlakukan C sebagai karakter 'C' asli. |
| /F | Cocokkan istirahat halaman. Setara dengan /x0c dan /cl. |
| /N | Cocokkan karakter garis baru. Setara dengan /x0a dan /cj. |
| /R | Cocokkan karakter carriage return. Setara dengan /x0d dan /cm. |
| /S | Cocokkan karakter whitespace apa pun, termasuk spasi, tab, istirahat halaman, dll. Setara dengan [/f/n/r/t/v]. |
| /S | Cocokkan karakter non-whitespace. Setara dengan [^/f/n/r/t/v]. |
| /T | Cocokkan karakter tab. Setara dengan /x09 dan /ci. |
| /v | Cocokkan tab vertikal. Setara dengan /x0b dan /ck. |
Periode (.) Cocokkan karakter tunggal yang dicetak atau tidak dicetak dalam string, kecuali untuk istirahat garis (/n). Ekspresi reguler JScript berikut dapat cocok dengan 'AAC', 'ABC', 'ACC', 'ADC', dll., Dan juga dapat cocok dengan 'A1C', 'A2C', AC 'dan#C':
/ac/Ekspresi reguler VBScript yang setara adalah:
acJika Anda mencoba mencocokkan string yang berisi nama file, di mana periode (.) Adalah bagian dari string input, Anda dapat mengawali periode dalam ekspresi reguler dengan karakter backslash (/) untuk mencapai ini. Misalnya, ekspresi reguler JScript berikut dapat cocok dengan 'FILEname.Ext':
/filename/.ext/Untuk VBScript, ekspresi yang setara terlihat seperti ini:
filename/.extEkspresi ini masih sangat terbatas. Mereka hanya diizinkan untuk mencocokkan karakter tunggal. Dalam banyak kasus, sangat berguna untuk mencocokkan karakter khusus dari daftar. Misalnya, jika teks input berisi judul bab yang dilambangkan dengan angka sebagai Bab 1, Bab 2 dan seterusnya, Anda mungkin ingin menemukan judul bab ini.
Anda dapat memasukkan satu atau lebih satu karakter ke dalam braket persegi ([dan]) untuk membuat daftar yang cocok. Jika karakter tertutup dalam kurung, daftar ini disebut ekspresi braket . Dalam kurung, seperti di tempat lain, karakter biasa mewakili diri mereka sendiri, yaitu, mereka cocok dengan salah satu dari diri mereka yang muncul dalam teks input. Sebagian besar karakter khusus kehilangan maknanya ketika mereka berada di ekspresi braket. Berikut beberapa pengecualian:
Karakter yang terkandung dalam ekspresi braket hanya cocok dengan satu karakter tunggal di mana ekspresi braket terletak di ekspresi reguler. Ekspresi reguler JScript berikut dapat cocok dengan 'Bab 1', 'Bab 2', 'Bab 3', 'Bab 4', dan 'Bab 5':
/Chapter [12345]/Untuk mencocokkan judul bab yang sama dalam VBScript, gunakan ekspresi berikut:
Chapter [12345]Harap dicatat bahwa hubungan posisi antara kata 'bab' dan spasi berikut dan karakter dalam kurung diperbaiki. Oleh karena itu, ekspresi braket hanya digunakan untuk menentukan satu set karakter yang memenuhi posisi karakter tunggal segera setelah kata 'bab' dan ruang. Inilah posisi karakter kesembilan.
Jika Anda ingin menggunakan rentang alih -alih karakter itu sendiri untuk mewakili karakter yang akan dicocokkan, Anda dapat menggunakan tanda hubung untuk memisahkan karakter awal dan akhir dari rentang. Nilai karakter dari setiap karakter akan menentukan urutan relatif dalam rentang. Ekspresi reguler JScript berikut berisi rentang ekspresi yang setara dengan daftar tanda kurung yang ditunjukkan di atas.
/Chapter [1-5]/Ekspresi fungsi yang sama di VBSCIPT adalah sebagai berikut:
Chapter [1-5]Jika rentang ditentukan dengan cara ini, baik nilai awal dan akhir termasuk dalam rentang tersebut. Satu hal yang perlu dicatat adalah bahwa nilai awal dalam jenis unicode harus sebelum nilai akhir.
Jika Anda ingin memasukkan tanda hubung dalam ekspresi braket, Anda harus menggunakan salah satu metode berikut:
[/-] [-az] [az-] [!--] [!-~]Demikian pula, dengan menempatkan caret (^) di awal daftar, Anda dapat menemukan semua karakter yang tidak ada dalam daftar atau jangkauan. Jika Caret muncul di tempat lain dalam daftar, itu cocok dengan dirinya sendiri tanpa makna khusus. Ekspresi reguler JScript berikut cocok dengan judul bab dengan nomor bab lebih besar dari 5:
/Chapter [^12345]/Untuk VBScript, gunakan:
Chapter [^12345]Dalam contoh yang ditunjukkan di atas, ekspresi akan cocok dengan karakter numerik apa pun pada posisi kesembilan kecuali 1, 2, 3, 4, atau 5. Jadi, 'Bab 7' adalah kecocokan, dan begitu pula 'Bab 9'.
Ekspresi di atas dapat diwakili oleh tanda hubung (-). Untuk jscript:
/Chapter [^1-5]/Atau, untuk VBScript, itu adalah:
Chapter [^1-5]Penggunaan khas ekspresi braket adalah untuk menentukan kecocokan dengan karakter alfabet huruf besar atau huruf kecil atau angka apa pun. Ekspresi JScript berikut memberikan kecocokan ini:
/[A-Za-z0-9]/Ekspresi VBScript yang setara adalah:
[A-Za-z0-9]