Rumah > Artikel > hujung hadapan web > JavaScript ungkapan biasa ringkasan_pengetahuan asas
Alat
Regexpal ialah pemproses ungkapan biasa Javascript dalam talian, alamatnya ialah: http://www.regexpal.com
Perkara yang paling penting dalam mempelajari peraturan biasa ialah operasi praktikal
Nombor Padanan: 707-827-7019
Padanan kumpulan watak
d sepadan dengan mana-mana digit Arab
D sepadan dengan mana-mana digit bukan Arab
Padan dengan mana-mana watak
dddDdddDddddD
ddd.ddd.dddd.
Tangkap pengumpulan dan aplikasi ke belakang
(d)d1 kemudian sepadan dengan 707
^((d{3})|^d{3}[.-]?)?d{3}[.-]?d{4}$
^ mewakili kedudukan permulaan garisan
(Menunjukkan watak permulaan kumpulan tangkapan
( mewakili kurungan kiri
d{3} bermaksud memadankan tiga digit
) mewakili kurungan kanan
|. menunjukkan pilihan
[.-]? sepadan dengan tempoh pilihan atau tanda sempang
) Tangkap watak akhir kumpulan
? Menunjukkan bahawa pengumpulan adalah pilihan
$ bermakna sehingga akhir baris
Sempadan
Gunakan tanda dolar $
untuk memadankan hujung baris atau rentetan
Pengkuantiti
Pengkuantiti yang tamak akan memadankan keseluruhan rentetan terlebih dahulu. Apabila cuba memadankan, ia memilih sebanyak mungkin, iaitu keseluruhan input. Pengkuantiti pertama sepadan dengan keseluruhan aksara, dan jika gagal, kembalikan satu aksara dan cuba lagi. Proses ini dipanggil backtracking.
Pengkuantiti malas mencari padanan bermula dari kedudukan permulaan sasaran. Menyemak rentetan satu aksara pada satu masa, mencari apa yang sepadan. Akhirnya, ia akan cuba memadankan keseluruhan rentetan.
Pengkuantiti posesif akan meliputi keseluruhan sasaran dan kemudian cuba mencari padanan, tetapi ia hanya akan mencuba sekali dan tidak akan berundur.
Jika anda menggunakan .* untuk memadankan mana-mana aksara sifar atau lebih kali
Kuantiti tamak
7{1,} dan 7+
7{0,} dan 7*
7? dan 7{0,1}
Pada asasnya ia adalah sama
7{m,n} akan memadankan m kepada n kali
Pengkuantiti malas
7?? 7 pertama sepadan dengan sifar atau satu 7, selepas malas ia tidak akan sepadan dengan apa-apa
7* padan dengan sifar 7
7+? sepadan dengan 7
7{m,n}? Padankan m 7