回答編集履歴
2
コメントの情報から追記
answer
CHANGED
@@ -8,4 +8,26 @@
|
|
8
8
|
if ( $ipaddress =~ /\d+\.\d+\.\d+\.(\d+)$/ ) {
|
9
9
|
print "$1\n";
|
10
10
|
}
|
11
|
+
```
|
12
|
+
|
13
|
+
# コメントを受けての追記
|
14
|
+
`foreach`で配列を回して変更する形でどうでしょうか
|
15
|
+
```perl
|
16
|
+
use strict;
|
17
|
+
use warnings;
|
18
|
+
use Data::Dumper;
|
19
|
+
|
20
|
+
my $ip_list = [
|
21
|
+
'192.168.130.5', '192.168.130.10',
|
22
|
+
'192.168.130.11', '192.168.130.120',
|
23
|
+
'192.168.130.122'
|
24
|
+
];
|
25
|
+
|
26
|
+
print "修正前: " . Dumper($ip_list);
|
27
|
+
|
28
|
+
foreach my $ipaddress ( @{$ip_list} ) {
|
29
|
+
$ipaddress = $1 if ( $ipaddress =~ /\d+\.\d+\.\d+\.(\d+)$/ );
|
30
|
+
}
|
31
|
+
|
32
|
+
print "修正後: " . Dumper($ip_list);
|
11
33
|
```
|
1
正規表現の修正
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
正規表現で取得が可能です。
|
2
2
|
`(\d+)$`
|
3
3
|
または
|
4
|
-
`\d+\.\d+\.\d+\.(\d+)`
|
4
|
+
`\d+\.\d+\.\d+\.(\d+)$`
|
5
5
|
|
6
6
|
```perl
|
7
7
|
my $ipaddress = '192.168.130.5';
|