當前位置:首頁 » 編程語言 » php正則域名

php正則域名

發布時間: 2022-06-27 06:16:04

php正則表達式如何匹配出域名

看看我下面的例子代碼:

<?php
$s='http://www.abc.com
http://www.def.com/
https://www.ghl.com/';
if (preg_match_all('#https?://(.*?)($|/)#m', $s, $r)) print_r($r[1]);
?>

執行的結果是:

E:\ygb>php a.php
Array
(
[0] => www.abc.com
[1] => www.def.com
[2] => www.ghl.com
)

⑵ php正則表達式驗證域名信息

<?php
$str='
Registrar:XINNETTECHNOLOGYCORPORATION

NameServer:NS15.XINCACHE.COM

CreationDate:14-jul-2015
';

preg_match_all('/([^:]*):([^: ]*)/is',$str,$matched);
$keys=array_map('trim',$matched[1]);
$vals=array_map('trim',$matched[2]);
$result=array_combine($keys,$vals);

echo"<pre>";
print_r($result);
echo"</pre>";
exit;

⑶ PHP-php中如何使用正則表達式匹配URL中的域名

<?php
//從URL中取得主機名
preg_match("/^(http://)?([^/]+)/i","IP/index.html",$matches);
$host=$matches[2];
//從主機名中取得後面兩段
preg_match("/[^./]+.[^./]+$/",$host,$matches);
echo"domainnameis:{$matches[0]} ";
?>

⑷ php 正則校驗是否是域名

1.檢測域名格式正確性的函數

//檢測域名格式
functionCheckUrl($C_url){
$str="/^http(s?)://(?:[A-za-z0-9-]+.)+[A-za-z]{2,4}(?:[/?#][/=?%-&~`@[]':+!.#w]*)?$/";
if(!preg_match($str,$C_url)){
returnfalse;
}else{
returntrue;
}
}

2.使用方法

$url="http://www..com/";//填寫你要檢測的域名
if(!CheckUrl($url)){
echo"域名格式不正確";
}else{
echo"域名格式正確";
}

⑸ 求高手寫php驗證域名的正則表達式

<?php
$str = "http://www.12aa_china521.com";
$strlen = strlen($str);
if($strlen<2 || $strlen>46)
{
echo "域名長度為2-46";
exit;
}
$arr = explode(".",$str);
if(strtolower(end($arr))=="cn")
{
if(strpos($str,"china") || strpos($str,"chinese"))
{
echo "cn後綴的域名不允許含有china或者chinese";
exit;
}
}
$preg = "/^(?:http:\/\/)?www.[0-9a-zA-Z]+_?[0-9a-zA-Z]+.(?:com(?:.cn)?|net|org|info|mobi)$/";
if(preg_match($preg,$str))
{
echo "域名正確";
}else{
echo "域名不正確";
}
?>

⑹ PHP正則表達式如何檢測現有的正確郵箱域名後綴

這個是IT群里的朋友!我不去群里了,在這里幫你把問題解決了吧!

其實嚴格說來,正則表達式只是一個模型匹配,所以直接使用模型匹配時我們有一個高通原理,也就是說匹配出來的內容是要大於你所需要的內容。就比此題來說,後邊可以匹配任何一個合規則的內容,而不可能精確地直接是你想要的內容——這就是高通,如果非要匹配到你想要的內容,使用正則運算有時是非常不合適的!所以這里不建議你使用這方式,或者是部分使用這種方式的形式。

高通就是通過你不全是你想要的,但你想要的一定全在里邊。

那麼,為什麼不考慮使用ajax的方式呢?後台自己設計一會資料庫,@前半段使用正則表這式,扣後半段直接使用數據存儲的內容,這樣可以精確到任何一個你想要的。

因為這里你想要的與不想要的其實也很模糊,你也不知道ckk這個域名在以後是不會被啟用!那麼你可以使用資料庫方式,由管理員自由添加!不用去修改那將來的表達式的!

但事實上很少人用這種方式——他們都在使用注冊時郵箱認證的方式,也就是說,發到你郵箱里一封信,輔助你完成注冊,這種情況雖然是高通,其他實他只是方便用戶能輸入正確,而不是要的確信數據,任何設計都要記著這句話——任何客戶端的信息都是不可信的!就算用JS完成了正則,那麼如果對方有意屏掉您的JS這十分容易的!所以你的正則根本不是用來驗證,而是方便用戶。

正是這種原因,高通的理由也是其存在的一個原因!就算使用了我說的資料庫,利用ajax來檢查,那麼別人照樣可以讓你的ajax不工作,而且,不是伺服器通過了,郵箱就一定有人注冊的!所以從這方面上來講,資料庫的實現意義也不大!

根據js的特點,客戶端的驗證沒有必要太這於麻煩,就算是服務端的驗證,建議你的也只採用這種方式即可。沒有使用資料庫的必要的——這個代價與達到的效果是不成比例的!

說完了,其實等於我也不解決!

⑺ PHP 正則後瞻 匹配是否是域名

$domain = '.com';

echo isDomain($domain);

function isDomain($domain) {
return !empty($domain) && strpos($domain, '--') === false &&
preg_match('/^([a-z0-9]+([a-z0-9-]*(?:[a-z0-9]+))?\.)?[a-z0-9]+([a-z0-9-]*(?:[a-z0-9]+))?(\.us|\.tv|\.org\.cn|\.org|\.net\.cn|\.net|\.mobi|\.me|\.la|\.info|\.hk|\.gov\.cn|\.e|\.com\.cn|\.com|\.co\.jp|\.co|\.cn|\.cc|\.biz)$/i', $domain) ? true : false;
}

⑻ php 怎麼正則補全域名啊,,補全http://

$str=".com";
if(!preg_match('/^http:///',$str)){
$str="http://".$str;
}
echo$str;

⑼ 正則匹配域名 php

是後綴是zbooa.com,前面的域名不用管嗎?
用substr,從後面截取幾位,=zbooa.com也行吧。

熱點內容
網站搭建伺服器搭建 發布:2025-03-16 10:33:27 瀏覽:795
游戲目錄在哪裡安卓 發布:2025-03-16 10:33:19 瀏覽:467
婉兒腳本 發布:2025-03-16 10:19:33 瀏覽:580
c語言ftp下載文件 發布:2025-03-16 10:05:02 瀏覽:307
手機帳戶密碼怎麼找回密碼 發布:2025-03-16 10:02:10 瀏覽:706
c語言位段的使用 發布:2025-03-16 10:00:38 瀏覽:572
象山編程 發布:2025-03-16 09:38:41 瀏覽:927
綠點掌知識薪資密碼是多少 發布:2025-03-16 09:37:05 瀏覽:597
osu安卓版怎麼 發布:2025-03-16 09:37:05 瀏覽:153
python編程編程第三版 發布:2025-03-16 09:29:56 瀏覽:968