


Petua Pantas: Menguji jika rentetan sepadan dengan regex dalam javascript
mata teras
- kaedah
-
test()
Ekspresi biasa dalam JavaScript berguna untuk mengesan maklumat dalam rentetan yang boleh ditulis dalam format yang berbeza (seperti tarikh, URL, e -mel, dll.). Mereka menyediakan keadaan ujian rentetan yang lebih fleksibel daripada kaedah seperti . -
indexOf()
Kaedah lain yang sepadan dengan ekspresi biasa JavaScript termasuk , - , dan
match
. Kaedah ini digunakan untuk mendapatkan sebahagian daripada rentetan yang sepadan dengan ungkapan biasa, cari corak ekspresi biasa dalam rentetan, dan hasil carian.search
exec
Tutorial pendek ini akan menerangkan cara menggunakan kaedah
test()
berdiri adalah serpihan teks yang boleh mengandungi pelbagai data seperti URL, nombor telefon, nama, nombor, dan sebagainya. Dalam banyak kes, anda perlu menyemak sama ada rentetan mengandungi sekeping teks atau beberapa jenis watak.
Apabila anda menguji jika rentetan mengandungi substring tertentu, anda mungkin cenderung menggunakan kaedah seperti
. Walau bagaimanapun, untuk ujian dan keadaan yang lebih fleksibel, menggunakan ungkapan biasa adalah pilihan yang lebih baik.
indexOf()
pemadanan ungkapan biasa JavaScript membolehkan anda menyemak sama ada rentetan mengandungi corak tertentu, substring, atau jenis aksara. Ekspresi biasa berguna untuk mengesan maklumat dalam rentetan yang boleh ditulis dalam format yang berbeza, seperti tarikh.
rentetan ujian dengan ekspresi biasa
Untuk menguji jika rentetan sepadan dengan ungkapan biasa, anda mesti terlebih dahulu membuat contoh ekspresi biasa. Anda kemudian boleh menggunakan kaedah
yang tersedia pada ungkapan biasa untuk memeriksa sama ada rentetan sepadan dengan ungkapan biasa.
Kaedah test()
test()
Contoh:
Dalam contoh ini, anda membuat corak
const pattern = /test.*regular/; const str = 'I want to test this string against a regular expression'; if (pattern.test(str)) { console.log('Matched'); } else { console.log('Not Matched'); }
test.*regular
Jika
, "dipadankan" direkodkan dalam konsol. Jika tidak, rekod "tidak dipadankan" dalam konsol. test()
true
Sejak
akan kembali str
. test()
true
anda juga boleh mengisytiharkan corak menggunakan
RegExp
const pattern = new RegExp('test.*regular'); const str = 'I want to test this string against a regular expression'; if (pattern.test(str)) { console.log('Matched'); } else { console.log('Not Matched'); }
Contoh biasa
Bahagian ini menunjukkan beberapa contoh tentang cara menggunakan pemadanan ekspresi biasa JavaScript untuk menguji kes penggunaan biasa. Harus diingat bahawa ungkapan biasa yang digunakan di sini mungkin bukan penyelesaian yang sempurna dalam setiap kes. Mereka masing -masing digunakan untuk memberikan contoh mudah bagaimana proses berfungsi.
url ujian
Anda boleh menggunakan ungkapan biasa untuk menguji sama ada rentetan adalah URL. Anda boleh bereksperimen dengan demonstrasi codepen berikut.
Perhatikan bahawa corak ekspresi biasa yang digunakan di atas mengharapkan URL bermula dengan http://
atau https://
.
Ujian e -mel
Anda boleh menggunakan ungkapan biasa untuk menguji sama ada rentetan adalah alamat e -mel yang sah. Demonstrasi codepen berikut menunjukkan bagaimana untuk melakukannya.
Tarikh Ujian
Anda boleh menggunakan ungkapan biasa untuk menguji sama ada rentetan adalah tarikh. Demonstrasi codepen berikut menunjukkan bagaimana untuk melakukannya.
Perhatikan bahawa format corak ekspresi biasa yang digunakan di atas adalah "dd-mm-yyyy" atau "dd/mm/yyyy".
cara lain untuk memadankan ekspresi biasa JavaScript
Terdapat cara lain untuk menguji jika rentetan sepadan dengan ungkapan biasa. Artikel ini tidak akan memperkenalkannya sepenuhnya, tetapi berikut adalah gambaran ringkas:
-
match
. Kaedah ini boleh didapati pada rentetan. Ia menerima ungkapan biasa sebagai hujah dan mengambil bahagian rentetan yang sepadan dengan ungkapan biasa (jika wujud). -
search
. Kaedah ini boleh didapati pada rentetan. Ia menerima ungkapan biasa sebagai argumen, mencari sama ada corak ekspresi biasa wujud dalam rentetan, dan jika ya, mencari indeks di mana corak pertama muncul dalam rentetan. -
exec
. Kaedah ini tersedia pada ungkapan biasa. Ia mengambil rentetan sebagai hujah, mencari rentetan untuk corak ekspresi biasa, dan mengambil hasilnya (jika ada).
Kesimpulan
Ekspresi biasa berguna untuk menguji sama ada rentetan mengandungi corak atau substring tertentu. Menggunakan pemadanan ekspresi biasa JavaScript, anda boleh menyemak sama ada rentetan adalah URL, tarikh, alamat IP, atau jenis dan format lain.
Kaedah indexOf()
yang tersedia pada ekspresi biasa memberikan fleksibiliti yang lebih besar apabila menguji sama ada corak sepadan dengan rentetan daripada menggunakan kaedah lain seperti test()
.
Bacaan yang berkaitan:
- ungkapan biasa dalam javascript
- 3 petua pintar untuk menggunakan ekspresi biasa
- Buka kunci misteri regex menggunakan contoh sebenar
- Petua Pantas: Cara Memisahkan Rentetan Ke Substrings Dalam JavaScript
Soalan Lazim pada Pemadanan String Advanced dan Ekspresi Biasa Menggunakan Kaedah Perlawanan JavaScript ()
Apakah tujuan kaedah () dalam JavaScript?
Kaedah match()
dalam JavaScript adalah alat yang berkuasa untuk mendapatkan perlawanan apabila rentetan yang sepadan dengan ekspresi biasa. Ia mengembalikan pelbagai keputusan, termasuk keseluruhan rentetan yang sepadan dan mana -mana tanda kurung yang ditangkap. Jika tiada perlawanan dijumpai, kembali null
. Kaedah ini amat berguna apabila anda perlu memanipulasi rentetan atau memeriksa kewujudan corak tertentu dalam rentetan.
bagaimana kaedah perlawanan () dalam JavaScript berbeza daripada kaedah rentetan lain?
Tidak seperti kaedah rentetan lain seperti indexOf()
atau includes()
, kaedah match()
membolehkan pencocokan corak yang lebih kompleks. Ia menggunakan ungkapan biasa, yang menyediakan cara yang fleksibel dan ringkas untuk memadankan rentetan teks. Ini menjadikannya alat yang lebih berkuasa untuk tugas -tugas seperti pengesahan bentuk, pengekstrakan data, dan manipulasi rentetan.
Bolehkah anda memberikan contoh cara menggunakan kaedah perlawanan ()?
Sudah tentu, katakan anda mempunyai rentetan dan anda ingin mencari semua kejadian perkataan "ujian". Inilah cara melakukannya:
let str = "This is a test. Test is important.";
let result = str.match(/test/gi);
console.log(result); // ["test", "Test"]
Dalam contoh ini, ungkapan biasa /test/gi
digunakan. Bendera "G" mewakili carian global, dan bendera "I" mewakili carian kes-insensitif.
Apakah ungkapan biasa dalam JavaScript?
Ekspresi biasa, juga dikenali sebagai regex atau regexp, adalah corak yang digunakan untuk memadankan kombinasi watak dalam rentetan. Dalam JavaScript, ungkapan biasa adalah objek yang boleh ditakrifkan dalam dua cara: menggunakan literals atau menggunakan pembina RegExp
. Mereka menyediakan cara yang kuat untuk melakukan corak yang sesuai dengan watak, kata -kata, dan corak watak tertentu.
Bagaimana menggunakan ungkapan biasa dengan kaedah () kaedah?
Anda boleh menggunakan ungkapan biasa secara langsung sebagai parameter ke kaedah match()
. Sebagai contoh, jika anda ingin mencari semua nombor dalam rentetan, anda boleh menggunakan watak -watak khas d
untuk mewakili nombor dalam ungkapan biasa:
let str = "The year is 2022.";
let result = str.match(/d /g);
console.log(result); // ["2022"]
Dalam contoh ini, d
sepadan dengan satu atau lebih nombor, dan bendera "G" melakukan carian global untuk semua perlawanan, bukan hanya perlawanan pertama.
Apa yang berlaku jika perlawanan tidak dapat dijumpai apabila menggunakan kaedah perlawanan ()?
Apabila menggunakan kaedah match()
, jika tiada perlawanan dijumpai, ia kembali null
. Ini berguna untuk pemeriksaan keadaan. Sebagai contoh, anda boleh menyemak sama ada hasilnya adalah null
sebelum meneruskan operasi lain dalam kod anda.
Bolehkah saya mengganti bahagian rentetan dengan kaedah perlawanan ()?
Walaupun kaedah match()
digunakan terutamanya untuk mencari, jika anda ingin menggantikan sebahagian daripada rentetan berdasarkan corak, JavaScript menyediakan kaedah replace()
, yang boleh digunakan dengan ungkapan biasa. Walau bagaimanapun, anda boleh menggunakan kaedah match()
untuk mencari bahagian rentetan yang perlu diganti.
Bagaimana menggunakan kaedah perlawanan () untuk menangkap kumpulan?
Anda boleh menangkap kumpulan dengan menggunakan kurungan dalam ekspresi biasa. Kaedah match()
mengembalikan kumpulan ini sebagai elemen berasingan dalam array hasil. Contohnya:
let str = "The year is 2022.";
let result = str.match(/(d )/g);
console.log(result); // ["2022"]
Dalam contoh ini, (d )
adalah kumpulan yang sepadan dengan satu atau lebih nombor.
Bolehkah saya menggunakan aksara khas dalam ungkapan biasa dengan kaedah perlawanan ()?
Ya, ungkapan biasa menyokong satu siri watak khas yang membolehkan anda membuat corak carian kompleks. Sebagai contoh, d
bermaksud mana -mana nombor, w
bermaksud mana -mana watak alfanumerik, dan .
bermaksud apa -apa watak kecuali garis pecah.
Apakah batasan kaedah () kaedah?
Walaupun kaedah match()
berkuasa, ia mempunyai beberapa batasan. Ia hanya boleh digunakan dengan rentetan, bukan dengan jenis data lain. Di samping itu, ia hanya boleh mengembalikan array hasil atau null
, bukan nilai boolean. Jika anda memerlukan hasil Boolean, anda mungkin perlu menggunakan kaedah RegExp
objek test()
sebaliknya.
Atas ialah kandungan terperinci Petua Pantas: Menguji jika rentetan sepadan dengan regex dalam javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











JavaScript adalah asas kepada pembangunan web moden, dan fungsi utamanya termasuk pengaturcaraan yang didorong oleh peristiwa, penjanaan kandungan dinamik dan pengaturcaraan tak segerak. 1) Pengaturcaraan yang didorong oleh peristiwa membolehkan laman web berubah secara dinamik mengikut operasi pengguna. 2) Penjanaan kandungan dinamik membolehkan kandungan halaman diselaraskan mengikut syarat. 3) Pengaturcaraan Asynchronous memastikan bahawa antara muka pengguna tidak disekat. JavaScript digunakan secara meluas dalam interaksi web, aplikasi satu halaman dan pembangunan sisi pelayan, sangat meningkatkan fleksibiliti pengalaman pengguna dan pembangunan silang platform.

Trend terkini dalam JavaScript termasuk kebangkitan TypeScript, populariti kerangka dan perpustakaan moden, dan penerapan webassembly. Prospek masa depan meliputi sistem jenis yang lebih berkuasa, pembangunan JavaScript, pengembangan kecerdasan buatan dan pembelajaran mesin, dan potensi pengkomputeran IoT dan kelebihan.

Enjin JavaScript yang berbeza mempunyai kesan yang berbeza apabila menguraikan dan melaksanakan kod JavaScript, kerana prinsip pelaksanaan dan strategi pengoptimuman setiap enjin berbeza. 1. Analisis leksikal: Menukar kod sumber ke dalam unit leksikal. 2. Analisis Tatabahasa: Menjana pokok sintaks abstrak. 3. Pengoptimuman dan Penyusunan: Menjana kod mesin melalui pengkompil JIT. 4. Jalankan: Jalankan kod mesin. Enjin V8 mengoptimumkan melalui kompilasi segera dan kelas tersembunyi, Spidermonkey menggunakan sistem kesimpulan jenis, menghasilkan prestasi prestasi yang berbeza pada kod yang sama.

JavaScript adalah bahasa utama pembangunan web moden dan digunakan secara meluas untuk kepelbagaian dan fleksibiliti. 1) Pembangunan front-end: Membina laman web dinamik dan aplikasi satu halaman melalui operasi DOM dan kerangka moden (seperti React, Vue.js, sudut). 2) Pembangunan sisi pelayan: Node.js menggunakan model I/O yang tidak menyekat untuk mengendalikan aplikasi konkurensi tinggi dan masa nyata. 3) Pembangunan aplikasi mudah alih dan desktop: Pembangunan silang platform direalisasikan melalui reaktnatif dan elektron untuk meningkatkan kecekapan pembangunan.

Python lebih sesuai untuk pemula, dengan lengkung pembelajaran yang lancar dan sintaks ringkas; JavaScript sesuai untuk pembangunan front-end, dengan lengkung pembelajaran yang curam dan sintaks yang fleksibel. 1. Sintaks Python adalah intuitif dan sesuai untuk sains data dan pembangunan back-end. 2. JavaScript adalah fleksibel dan digunakan secara meluas dalam pengaturcaraan depan dan pelayan.

Artikel ini menunjukkan integrasi frontend dengan backend yang dijamin oleh permit, membina aplikasi edtech SaaS yang berfungsi menggunakan Next.Js. Frontend mengambil kebenaran pengguna untuk mengawal penglihatan UI dan memastikan permintaan API mematuhi dasar peranan

Peralihan dari C/C ke JavaScript memerlukan menyesuaikan diri dengan menaip dinamik, pengumpulan sampah dan pengaturcaraan asynchronous. 1) C/C adalah bahasa yang ditaip secara statik yang memerlukan pengurusan memori manual, manakala JavaScript ditaip secara dinamik dan pengumpulan sampah diproses secara automatik. 2) C/C perlu dikumpulkan ke dalam kod mesin, manakala JavaScript adalah bahasa yang ditafsirkan. 3) JavaScript memperkenalkan konsep seperti penutupan, rantaian prototaip dan janji, yang meningkatkan keupayaan pengaturcaraan fleksibiliti dan asynchronous.

JavaScript tidak memerlukan pemasangan kerana ia sudah dibina dalam pelayar moden. Anda hanya memerlukan editor teks dan penyemak imbas untuk memulakan. 1) Dalam persekitaran penyemak imbas, jalankan dengan memasukkan fail HTML melalui tag. 2) Dalam persekitaran Node.js, selepas memuat turun dan memasang node.js, jalankan fail JavaScript melalui baris arahan.
