转换列表,无需替换模式

Transform a list, without having patterns to replace

我有一个这样的列表:

['10.131.0.240/29-NameoftheNetwork-8-8-0', '10.121.0.248/29-NameoftheNetwork2-8-8-0', '10.111.2.248/29-NameoftheNetwork3-8-7-1']

每个值的最后三个数字是:IP 总数/已用 IP/剩余 IP。

我只想为每个网络获取“左 IP”,将其转换为:

['10.131.0.240/29-NameoftheNetwork-8-8-0', '10.121.0.248/29-NameoftheNetwork2-8-8-0', '10.111.2.248/29-NameoftheNetwork3-8-7-1']

像这样:

['10.131.0.240/29-NameoftheNetwork=0', '10.121.0.248/29-NameoftheNetwork2=0', '10.111.2.248/29-NameoftheNetwork3=1']

但我找不到删除不需要的字符的方法,而且我没有重复替换它的模式或“=”。

使用正则表达式。

例如:

import re

data = ['10.131.0.240/29-NameoftheNetwork-8-8-0', '10.121.0.248/29-NameoftheNetwork2-8-8-0', '10.111.2.248/29-NameoftheNetwork3-8-7-1']
data = [re.sub(r"(.*?)\-\d+\-\d+\-(\d+)", r"=", i) for i in data]
print(data)

输出:

['10.131.0.240/29-NameoftheNetwork=0', '10.121.0.248/29-NameoftheNetwork2=0', '10.111.2.248/29-NameoftheNetwork3=1']