導航:首頁 > IDC知識 > 正則匹配域名

正則匹配域名

發布時間:2020-10-04 17:03:01

1、求一個匹配域名採集的正則表達式,比如 www.yuming.com 我要匹配頁面中所有包含域名 :yuming 的鏈接

string pattern="(http://){0,1}(/w/d)*.yuming.(com|cn|net)";
解析:(http://){0,1}指示無論域名出現時是否帶有http://字樣都要進行匹配。
(/w/d)*:指示無論出現二級域名與否,只要帶有yuming字樣都要進行匹配
yuming指你要採集的域名,你自行替換吧。
(com|net|cn):要取域名的後綴,根據需要,你可以自行添加或刪減。
這個表達式相比較來說比做蜘蛛程序的表達式容易寫,你應當研究一下。做.net採集,不會正則無疑是瘸了條腿。

2、正則表達式匹配域名

匹配完整域名的正則表達式:
[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?

[a-zA-Z0-9][-a-zA-Z0-9]{0,62}表達的意思如下:
一個完整的域名,由根域名、頂級域名、二級域名、三級域名……構成,每級域名之間用點分開,每級域名由字母、數字和減號構成(第一個字母不能是減號),不區分大小寫,長度不超過63。
(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?表達的意思如下:
完整的域名至少包括兩個名字(比如google.com,由google和com構成),最後可以有一個表示根域的點(在規范中,最後有一個點的才是完整域名,但一般認為包括兩個以上名字的域名也是完整域名,哪怕後面沒有點)。

3、正則表達式如何匹配部分出域名?

這個問題用正則處理不合適
最簡單的方法就是讓一個變數X等於http://aaa.com/?id=11

然後用if語句, If (Y <>X) Then .......顯示Y之類的

4、正則表達式如何匹配特定的域名?

如何用正則表達是匹配不含mtalk.google.com、talk.google.com、talkx.l.google.com、talk.l.google.com的其他google域名?


/^[^(mtalk)(talk)(talkx.l)(talk.l)].google.com$/g

5、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
)

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

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

7、ip,域名的正則表達式 怎麼寫

^^^((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d)(\.((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d)){3}$|^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}$

與正則匹配域名相關的知識