Rumah > pembangunan bahagian belakang > tutorial php > Cara untuk mengesahkan bahawa rentetan input ialah format URL yang betul menggunakan ungkapan biasa PHP

Cara untuk mengesahkan bahawa rentetan input ialah format URL yang betul menggunakan ungkapan biasa PHP

WBOY
Lepaskan: 2023-06-24 12:10:02
asal
1937 orang telah melayarinya

Dalam era Internet hari ini, laman web telah menjadi bahagian yang sangat diperlukan dalam kehidupan kita. Untuk mana-mana tapak web, URLnya ialah komponen paling asas. Walau bagaimanapun, terdapat banyak format untuk URL ada yang bermula dengan http:// atau https://, ada yang bermula dengan www., dan ada yang bermula dengan nama domain peringkat kedua. Jadi, bagaimana untuk menggunakan ungkapan biasa PHP untuk mengesahkan sama ada rentetan input ialah format URL yang betul? Kita juga mungkin mengetahui.

1. Fahami ungkapan biasa

Ungkapan biasa ialah alat pemprosesan teks yang berkuasa yang boleh membantu kami memadankan dan mengekstrak rentetan tertentu. Dalam PHP, ungkapan biasa boleh dicapai menggunakan fungsi preg_match(). Jika kita ingin mengesahkan sama ada rentetan mematuhi format tertentu, kita perlu menggunakan ungkapan biasa.

2. Ungkapan biasa untuk mengesahkan format URL

Dalam PHP, kami boleh menggunakan ungkapan biasa untuk mengesahkan sama ada rentetan mematuhi format URL. Berikut ialah ungkapan biasa format URL ringkas:

/^((https|http|ftp|rtsp|mms)?://)[^s]+/
Salin selepas log masuk

Ungkapan biasa ini akan sepadan dengan format URL bermula dengan http, https, ftp, rtsp, mms dan protokol lain. Jika anda ingin mengesahkan bahawa URL hanya boleh bermula dengan protokol yang ditentukan, anda boleh menukar (https|http|ftp|rtsp|mms) dalam ungkapan biasa kepada mana-mana protokol.

3 mengoptimumkan lagi ungkapan biasa

Walaupun ungkapan biasa di atas boleh memadankan kebanyakan corak URL, ia masih mempunyai banyak kekurangan. Contohnya, ia tidak boleh memadankan nama domain peringkat kedua, tetapi hanya boleh memadankan nama domain peringkat ketiga dan ke atas. Oleh itu, kita perlu mengoptimumkan.

Berikut ialah ungkapan biasa format URL yang lebih lengkap:

/^((https|http|ftp|rtsp|mms)?://)[^s]+.[^s]{2,}|(www.)[^s]+.[^s]{2,}$/i
Salin selepas log masuk

Ungkapan biasa ini boleh sepadan dengan jenis URL berikut:

  • http://www . example.com
  • https://www.example.com
  • ftp://www.example.com
  • rtsp://www.example.com
  • mms://www.example.com
  • www.example.com
  • xxx.example.com (nama domain peringkat kedua)

Perlu diingatkan bahawa ungkapan biasa ini tidak sensitif huruf besar-besaran, iaitu /i bermaksud tidak sensitif huruf besar-besaran.

4 Gunakan fungsi preg_match() untuk mengesahkan format URL

Sekarang kita mempunyai ungkapan biasa, langkah seterusnya ialah menggunakan fungsi preg_match() dalam PHP untuk mengesahkan sama ada a rentetan sepadan dengan Format URL.

$url = 'http://www.example.com';
$pattern = '/^((https|http|ftp|rtsp|mms)?://)[^s]+.[^s]{2,}|(www.)[^s]+.[^s]{2,}$/i';
if (preg_match($pattern, $url)) {
    echo '字符串符合网址格式';
} else {
    echo '字符串不符合网址格式';
}
Salin selepas log masuk

Dalam kod di atas, $url ialah rentetan yang perlu disahkan dan $pattern ialah ungkapan biasa dalam format URL. Jika $string mematuhi format URL, rentetan output mematuhi format URL, jika tidak rentetan output tidak mematuhi format URL.

5 Ringkasan

Ungkapan biasa ialah alat pemprosesan teks yang sangat berkuasa, yang boleh membantu kami memadankan dan mengekstrak rentetan tertentu dengan cepat. Apabila menggunakan PHP untuk mengesahkan corak URL, kami boleh menggunakan fungsi preg_match() dan ungkapan biasa corak URL untuk melengkapkan. Pada masa yang sama, untuk meningkatkan ketepatan ungkapan biasa, kami perlu terus mengoptimumkan dan menambah baiknya supaya ia boleh memadankan corak URL yang lebih kompleks.

Atas ialah kandungan terperinci Cara untuk mengesahkan bahawa rentetan input ialah format URL yang betul menggunakan ungkapan biasa PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan