Bacaan yang disyorkan: Panjang pengesahan borang JavaScript
Borang pengesahan-serahkan borang Javascript
Pengesahan borang JavaScript - pengenalan pertama kepada ungkapan biasa
Dalam artikel sebelum ini, saya memperkenalkan anda kepada Pengesahan borang Javascript - pengenalan pertama kepada ungkapan biasa Artikel ini memperkenalkan kepada anda pengesahan borang Javascript - membuka tabir ungkapan biasa Sila baca teks penuh untuk butiran.
Gunakan aksara meta untuk memadankan jenis aksara yang sepadan
Membuat ungkapan biasa adalah sedikit seperti mencipta rentetan literal, kecuali ungkapan biasa muncul dalam sepasang "/"
Karakter meta peringkat pertama digunakan dalam ungkapan biasa untuk menyambung huruf dan nombor
"." sepadan dengan mana-mana watak, kecuali baris baharu
"d" sepadan dengan mana-mana aksara angka
"w" sepadan dengan mana-mana aksara abjad atau angka
"s" sepadan dengan ruang
Rentetan "^" mesti bermula dengan corak
Rentetan "$" perlu diakhiri dengan corak
Metakarakterbukan sahaja mewakili watak literal, ia adalah simbol yang digunakan untuk membina ungkapan biasa
Contoh: Terdapat tiga aksara di sini
"A","7","%"
/w/ boleh sepadan dengan "A", "7"
/^d/ boleh sepadan dengan "7"
/d/ boleh sepadan dengan "7"
/./ boleh memadankan "A", "7", "%"
Tetapi bagaimana pula dengan rentetan yang mengandungi berbilang aksara?
"2nite","007", "catch22",
/^d/ boleh memadankan "2nite", "007" (semuanya bermula dengan nombor)
/ddd/ sepadan dengan "007" (3 nombor dalam satu baris)
/^cat/ boleh memadankan "catch22" (bermula dengan watak kucing)
/dd$/ sepadan dengan "catch22" (mesti diakhiri dengan dua nombor)
Contohnya: Memadankan kod zip AS, format kod zip ialah #####-####
/^ddddd-dddd$/
Gunakan kelayakan untuk menentukan bilangan kejadian aksara
Kelayakan digunakan untuk mengawal bilangan kali subcorak muncul dalam ungkapan biasa
Kelayakan didahului oleh sub-corak dan kelayakan digunakan pada sub-corak dan mengawal bilangan kali sub-corak muncul dalam corak
Subcorak sebelum kelayakan "*" mesti muncul 0 atau lebih kali
Subcorak sebelum kelayakan "+" mesti muncul 1 kali atau lebih
Subcorak sebelum kelayakan "?" mesti muncul 0 atau 1 kali
Subcorak sebelum kelayakan "{n}" mesti muncul tepat N kali
“()” mengumpul aksara atau/dan aksara meta untuk menjadi subcorak
Juga menggunakan poskod sebagai contoh
/^d{5}-d{4}$/
Dapat dilihat bahawa ungkapan dengan qualifier lebih tepat daripada ungkapan dengan hanya metacharacter
/w*/ sepadan dengan mana-mana aksara abjad angka, termasuk rentetan kosong
/.+/ Memadankan rentetan yang muncul lebih daripada sekali (digunakan untuk memadankan rentetan bukan bukan kosong)
/(Panas)??Donut/ boleh padankan Hot atau Donut
*Apabila anda ingin memadankan aksara dengan makna istimewa dalam ungkapan biasa, anda boleh menggunakan garis serong ke belakang
Contohnya, padankan $:$*
Gunakan ungkapan biasa untuk mengesahkan data
Ungkapan biasa dalam JavaScript diwakili oleh objek RegExp, yang mengandungi kunci untuk menggunakan ungkapan biasa untuk mengesahkan data – kaedah test(), yang menyemak sama ada corak yang ditentukan wujud dalam rentetan
Contoh:
Literalis objek ungkapan biasa membina objek RegExp secara automatik
if(!regex.test(inputFiled.value)) { //在正则表达式上调用text方法 //如果符合合正则表达式的要求,返回true //如果不符合正则表达式的要求,返回false }
Contoh Kod
Seterusnya, tulis kaedah yang digunakan khusus untuk mengesahkan format rentetan
//regex正则表达式 //inputStr需要验证的字符串 //helpText提供信息提示的一个span标签 //helpMessage提示信息内容 // function validateRegExp(regex,inputStr,helpText,helpMessage) { if(!regex.test(inputStr)) { if(helpText!=null) helpText.innerHTML=helpMessage; return false; } else{ if(helpText!=null) helpText.innerHTML=""; } return true; } function validateDate(inputFild,helpText) { if(!validateNonEmpty(inputFild,helpText)//先检查参数是非空的 { return false; } return validateRegExp(/^\d{2}\/\d{2}\/\d{4}$/,inputFild,helpText,"请输入正确的日期格式");//调用正则验证方法 }
Baiklah, artikel ini tamat di sini. Terima kasih semua kerana menyokong tapak web Script House!