我遇到了一個奇怪的IP,它在八位字節中有冗餘的零值。無論如何要正確驗證這是一個IP還是使用正則表達式去除那些冗餘的零?驗證特殊形式的IP地址
例子是如下: .215.239(在第二八位位組「064」注意到額外的零的)。
我確實有一個工作IP驗證功能,但由於正則表達式的性質無法接受額外的零,因此無法正確驗證此Ip。以下是PHP中的代碼:
function valid_ip($ip) {
return preg_match("/^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])" .
"(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$/", $ip);
}
感謝您的任何幫助提前窺視! :d
出於好奇,爲什麼你想驗證一個IP地址?這通常不由用戶輸入。 – NullUserException
恩,我正在篩選從網站中提取的結果。在這個結果是日期等等等等,我嘗試只提取IP :( – phpnoob