什么是正确的方法,为IPv4地址进行模式匹配(使用:regex/sed/awk(,然后在IP地址之前插入新的行/回车符,同时删除IP地址之前的逗号(,(和空格( ((如果存在逗号和空格(?
例如,这是我必须处理的数据类型:
1.2.3.4 - BlahA, BlahB, BlahC, 10.11.12.13 - BlahD, BlahE, BlahF, 250.251.252.253 - BlahG, BlahH, BlahI
这就是我希望输出在正则表达式/sed/awk 之后的样子:
1.2.3.4 - BlahA, BlahB, BlahC
10.11.12.13 - BlahD, BlahE, BlahF
250.251.252.253 - BlahG, BlahH, BlahI
您可以使用捕获组并在每个 IP 之前插入换行符。像这样:
(d+(?:.d+){3})
https://regex101.com/r/Kc5tCO/1
同样在您的有限示例中(如 ctwheels 指出的那样(,您可以在数字前面的,
上拆分,例如:
, (?=d)
https://regex101.com/r/Kc5tCO/2