【发布时间】:2021-06-17 08:04:34
【问题描述】:
我有一个字符串,它是一个 IP 地址列表和一个重要的数字。
我正在尝试解析字符串,使其仅包含 IP 地址。或者更好的是,根据表示的 IP 地址数量创建多个字符串。
我觉得我很接近,但没有雪茄。
输入:
$str = "[11.22.33.44]-30,[55.66.77.88]-30"
预期输出:
11.22.33.44
55.66.77.88
我第一次使用正则表达式解决这个问题:
while ($tempBlackList =~ /(\w+)/g) {
print "$1\n";
}
这会导致:
11
22
33
44
30
55
66
77
88
30
尝试解决此问题的第二次迭代:
while ($tempBlackList =~ /(\w+)(\w+)(\w+)(\w+)/g) {
print "\"$1.$2.$3.$4\n";
}
这将导致不打印任何内容。我希望它是我想要的。
任何帮助将不胜感激。
【问题讨论】:
-
\w不匹配.