1、正則表達式如何匹配部分出域名?
這個問題用正則處理不合適
最簡單的方法就是讓一個變數X等於http://aaa.com/?id=11
然後用if語句, If (Y <>X) Then .......顯示Y之類的
2、求一個匹配域名採集的正則表達式,比如 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採集,不會正則無疑是瘸了條腿。
3、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}$
4、中文域名的驗證正則表達式
/^[A-Za-z0-9_\u4E00-\u9FA5]{1,20}([\.\-][A-Za-z0-9_\u4E00-\u9FA5]{1,20})*$/
試試這樣吧,你用的php程序喲?自己寫幾個超出的和符合的驗證一下就知道了。+表示「1個或者多個」,改成{1,20}就可以了
補充:=============================================
你的意思是有
www.我是中文域名123im.com這種混合形式而如果其中不出現中文的那段就可以超過20的么?那可以改一改:
/^(?:[\w_]+|[A-Za-z0-9_\u4E00-\u9FA5]{1,20})([\.\-][A-Za-z0-9_\u4E00-\u9FA5]{1,20}|[\w_]+)*$/
沒試過,你可以用你那邊樣本域名測試下看
5、正則表達式匹配域名
匹配完整域名的正則表達式:
[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構成),最後可以有一個表示根域的點(在規范中,最後有一個點的才是完整域名,但一般認為包括兩個以上名字的域名也是完整域名,哪怕後面沒有點)。
6、求助一個正則表達式篩選域名
很高興能回答你的問題:
如上使用零寬斷言:
匹配<site>後麵包含除了【/】和【<】以外的任意字元(不匹配<site>)。
匹配【</】或者【/】的結束位置(不匹配【</】和【/】)
這樣,能處理:
<site>www.abc.com</site>
使用grep測試結果:
7、求高手寫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 "域名不正確";
}
?>
8、正則表達式如何匹配特定的域名?
如何用正則表達是匹配不含mtalk.google.com、talk.google.com、talkx.l.google.com、talk.l.google.com的其他google域名?
9、正則表達式取根域名
^^https?://([^.]+\.)?[^:/.]+\.[^:/.]+(?=[:/])
(?<=https?://([^.]+\.)?)[^:/.]+\.[^:/.]+(?=[:/])
先用第一個正則匹配,再把匹配的結果用第二個正則提取根域名