簡単な質問があります。以下のコードで何が間違っていますか:
#!/usr/bin/perl -w
use strict;
my $num = "12345";
print "$num \n" if $num =~ m/\d{1,3}/;
私の番号は 5 桁なので、if ステートメントが少なくとも 1 桁、最大 3 桁の数字を探しているため、出力に何も出力されないことを期待していました。しかし、私のスクリプトは以下のように出力をピントします:
# perl num.pl
12345
上記の正規表現を誤解していますか?
ありがとう。
編集:
というわけで、実際には文字列のような IP アドレスを照合しようとしています。たとえば、一致させたいのです11.222.3.444
が、うまくいかなかったm/\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}/
ので、数字のみを含む単一の文字列で作業を開始したため、これをスタックオーバーフローに投稿しました。
^ または $ を入力する必要がある場合、上記の文字列のように IP アドレスを一致させたい場合、それらをどのように使用すればよいでしょうか。
ありがとうございました。