[英]Regex for IP address is not matching
我試圖從用戶那里收集一個ip並做一些基本的錯誤檢查和黑客攻擊不必要的空白區域,但是我遇到了一些我認為是我的正則表達式的問題。
my $serverIP;
print "Enter vSphere server's IP\n";
while(<>){
$serverIP = $_;
print "DEBUG <$serverIP>\n";
if (/$serverIP = (\d+\.\d+\.\d+\.\d+)/){
print "Match found $1\n";
$serverIP = $1;
last;
}
else{
print "Not an IP\n";
print "Please enter a valid IP\n";
}
}
print "I found $serverIP!\n";
我知道正則表達式很簡單但它與1.1.1.1不匹配,因為我認為它應該
更改:
if (/$serverIP = (\d+\.\d+\.\d+\.\d+)/){
至:
if ($serverIP =~ /(\d+\.\d+\.\d+\.\d+)/){
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.