Tubuh ekspresi reguler.
Simbol khusus digunakan dalam ekspresi reguler. Di bawah ini saya akan memperkenalkan secara singkat berbagai simbol, arti dan penggunaannya (catatan: "X ke atas termasuk X"):
/ menunjukkan bahwa teks yang mengikutinya adalah simbol khusus. Contoh: "n" dan "n" konsisten. "/n" sama dengan karakter baris baru.
^ bertepatan dengan awal masukan.
$ cocok dengan akhir input.
* Jika karakter sebelum simbol ini sama 0 kali atau lebih, maka karakter tersebut konsisten. Contoh: "zo*" konsisten dengan "zoo" dan "z".
+ Jika karakter sebelum simbol ini sama lebih dari satu kali, maka karakter tersebut konsisten. Contoh: "zo*" konsisten dengan "zoo", tetapi tidak konsisten dengan "z".
? Jika karakter sebelum simbol ini sama 0 atau 1 kali, berarti konsisten. Contoh: "a?ve?" konsisten dengan "ve" dalam "never".
. Konsisten dengan semua literal tunggal kecuali baris baru.
(Ekspresi Reguler) Temukan teks yang cocok menggunakan ekspresi yang ditentukan. Jika ditemukan, simpan. Bagian yang konsisten dapat diperoleh dari
Ditemukan dalam array yang diperoleh dengan metode Match.
Jika salah satu dari x|yx dan y sama maka dianggap konsisten. Contoh: "(z|f)ood" konsisten dengan "zood" dan "food".
{n} n adalah bilangan bulat di atas 0. Jika sama dengan teks sebelumnya sebanyak n kali, maka keduanya konsisten. Contoh: Huruf "o" pada "o{2}" dan "Bob" berbeda
Konsisten dengan dua huruf "o" pertama di "foooood".
{n,} n adalah bilangan bulat di atas 0. Harus konsisten dengan teks sebelumnya minimal n kali.
{n,m} Keduanya bilangan bulat. Derajat dalam rentang n hingga m konsisten.
[xyz] dianggap konsisten jika sama dengan karakter mana pun dalam tanda kurung siku.
[^xyz] adalah kebalikan dari yang di atas.
[az] Rentang karakter dari "a" hingga "z" dianggap konsisten.
[^az] Bertentangan dengan hal di atas.
/b menunjukkan akhir sebuah kata. Contoh: "er/b" konsisten dengan "er" dari "never", namun tidak konsisten dengan "er" dari "verb".
/B menunjukkan akhir dari kata yang bukan kata.
/d mewakili angka.
/D artinya bukan angka.
/s berarti ruang.
/S berarti bukan spasi.
/w berarti semua karakter alfanumerik.
/W berarti tidak semua karakter alfanumerik.
aku (abaikan huruf besar/kecil)
g (Temukan semua kemunculan pola dalam teks lengkap)
gi (pencarian teks lengkap, abaikan huruf besar/kecil)
/num num harus diberi angka positif. Bandingkan dengan bagian yang sudah disimpan. Contoh: "(.)/1" sama dengan dua angka yang berurutan
Teksnya konsisten.
2. Cara mendefinisikan teks utama sebuah kalimat:
Metode 1: Tulis secara langsung
var s=/ekspresi reguler/i atau g atau ig
Metode 2: Buat instance objek:
var s=RegExp baru(ekspresi reguler, i atau g atau ig)
Tiga metode yang terkait dengan ekspresi reguler:
1 metode eksekutif
Deskripsi: Mencari dalam baris teks tertentu.
Struktur: ekspresi reguler.exec(string).
Penjelasan: Pencarian menghasilkan:
null tidak diambil;
Setelah hasil yang konsisten diambil;
contoh:
Cuplikan kodenya seperti berikut:
<skrip>
var s='AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPp'
var r=RegExp baru('g','i');
var a=r.exec(s);
peringatan(a);
</skrip>
2 metode kompilasi:
Deskripsi: Memodifikasi bentuk internal representasi reguler.
Struktur: Ekspresi reguler.kompilasi('teks','g atau i atau ig').
Komentar: Tidak banyak yang bisa dikatakan.
contoh:
Cuplikan kodenya seperti berikut:
<skrip>
var s='AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPp'
var r=RegExp baru('[AZ]','g');
var a=s.pertandingan(r);
peringatan(a);
r.kompilasi('[az]','g');
var a=s.pertandingan(r);
peringatan(a);
</skrip>
3 metode pengujian:
Deskripsi: Seperti namanya, ikuti kuis.
Struktur: ekspresi reguler.test(string).
Komentar: Kembali:
salah tidak ditemukan;
benar ditemukan;
contoh:
Cuplikan kodenya seperti berikut:
<skrip>
var re=/re/g;
var pesan='kembali';
var msg1='orang jahat';
alert(re.test(pesan));
alert(re.test(msg1));
</skrip>
4 metode penggantian:
Deskripsi: Temukan yang konsisten dan ganti.
Struktur: string.replace (ekspresi reguler, string pengganti).
Penjelasan: String tidak berubah dan salinannya dikembalikan.
contoh:
Cuplikan kodenya seperti berikut:
<skrip>
var s='AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPp'
var r=RegExp baru('[AZ]','g');
var a=s.replace(/[az]/g,'A');
peringatan(a);
</skrip>
5 metode pencocokan:
Deskripsi: Melakukan pencarian.
Struktur: string.match (ekspresi reguler).
Penjelasan: Kembalikan urutannya.
contoh:
Cuplikan kodenya seperti berikut:
<skrip>
var re=/re/g;
var pesan='rererere';
var msg1='orang jahat';
alert(pesan.pertandingan(ulang));
alert(msg1.match(re));
</skrip>
6 metode pemisahan:
Deskripsi: Memisahkan string.
Struktur: String.split (ekspresi reguler).
Penjelasan: Kembalikan urutannya.
contoh:
Cuplikan kodenya seperti berikut:
<skrip>
var s="halo dunia yang baik ini";
var p=//s/g;
var a=s.split(p);
peringatan(a);
</skrip>
7 metode pencarian:
Deskripsi: Mengembalikan posisi string yang konsisten. (Ini jauh lebih serbaguna daripada indexOf!)
Struktur: string.search(ekspresi reguler).
Komentar: Kembali
Bilangan bulat positif jika ditemukan
-1 jika tidak ditemukan
contoh:
Cuplikan kodenya seperti berikut:
<skrip>
var s="halo dunia yang baik ini";
var p=/bagus/g;
var a=s.pencarian(p);
peringatan(a);
</skrip>
Ubah contoh metode penggantian:
Cuplikan kodenya seperti berikut:
<skrip>
var s="hellOSCF";
var r=RegExp baru("[AZ]","g");
s=s.replace(r,"a");
peringatan
</skrip>
Terakhir, ada berbagai atributnya
1 atribut indeks terakhir:
Deskripsi: Tetapkan posisi awal pencarian dan dapatkan nilainya
Struktur: ekspresi reguler.lastIndex(=nilai).
Komentar:
Ketika lastIndex lebih besar dari panjang teks yang diambil, jika dieksekusi menggunakan metode test atau exec, eksekusi akan gagal.
Properti lastIndex diatur ke 0.
Ketika lastIndex sama dengan panjang teks pencarian, jika isi ekspresi kosong, maka konsisten.
Eksekusi gagal dan reset ke 0.
Dalam kasus selain di atas, lastIndex akan disetel ke penunjuk posisi string teks terakhir yang konsisten.
2 atribut sumber
Deskripsi: Mengembalikan teks ekspresi reguler
Struktur: ekspresi reguler.sumber
contoh:
Cuplikan kodenya seperti berikut:
<skrip>
var s=/[az]{3}/W/s/g;
var s1=RegExp baru("[az]{3}/W","g");
alert(s.source);
peringatan(s1.sumber);
</skrip>
Di bawah ini saya akan menuliskan beberapa fungsi pemrosesan karakter:
1 Angka sangat dilarang
Cuplikan kodenya seperti berikut:
pemeriksaan fungsi(pesan){
var exe=//d/g;
if(exe.test(pesan))return(0);
lain kembali(1)
}
2 huruf saja
Cuplikan kodenya seperti berikut:
pemeriksaan fungsi(pesan){
var exe=//W/g;
if(exe.test(pesan))return(0);
lain kembali(1);
}
3 Kode yang sangat dilarang
Cuplikan kodenya seperti berikut:
pemeriksaan fungsi(pesan){
var exe=/<(/w|/W)*>/g;
if(exe.test(pesan))return(0);
lain kembali(1);