Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mengehadkan Panjang Watak dalam Ungkapan Biasa?

Bagaimana untuk Mengehadkan Panjang Watak dalam Ungkapan Biasa?

Barbara Streisand
Lepaskan: 2024-11-20 03:17:02
asal
921 orang telah melayarinya

How to Restrict Character Length in a Regular Expression?

Menghadkan Panjang Aksara dalam Ungkapan Biasa

Apabila menggunakan ungkapan biasa untuk memadankan corak tertentu dalam rentetan, selalunya perlu untuk menyekat aksara panjang untuk memastikan padanan yang tepat. Dalam contoh yang disediakan:

var test =  /^(a-z|A-Z|0-9)*[^$%^&*;:,<>()?""']*$/
Salin selepas log masuk

regeks ini sepadan dengan mana-mana rentetan yang terdiri daripada huruf atau digit tanpa sebarang panjang aksara yang terhad. Percubaan untuk mengehadkan panjang aksara kepada 15 menggunakan [^$%^&*;:,<>()?""']*${1,15} mengakibatkan ralat.

Kepada selesaikan isu ini dan kuatkuasakan had aksara, gunakan pandangan hadapan yang dilabuhkan pada permulaan rentetan:

^(?=.{1,15}$)...
Salin selepas log masuk

Pandangan hadapan ini menyemak sama ada rentetan sepadan dengan 1 hingga 15 aksara tetapi tidak termasuk baris baharu pada penghujung (disebabkan $). Ia mengehadkan panjang keseluruhan rentetan input.

Menggunakan pengkuantiti pada penghujung, seperti [^$%^&*;:,<>()?""']{1,15 }, hanya akan mengehadkan panjang kelas aksara kedua, bukan keseluruhan rentetan.

Untuk rentetan yang mungkin mengandungi urutan baris baharu, gunakan [sS] untuk memadankan mana-mana watak:

^(?=.[\s\S]{1,15}$)...
Salin selepas log masuk

Ini memastikan sekatan panjang aksara terpakai merentas keseluruhan rentetan, tanpa mengira baris baharu.

Atas ialah kandungan terperinci Bagaimana untuk Mengehadkan Panjang Watak dalam Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan