我有以下形式的 IP 地址列表:
010.125.015.013
010.125.153.012
010.125.012.135
我无法用该格式执行 ping,因为 Windows 认为它是点分八进制格式。我需要删除每个点后的前导 0。
事情没那么简单,因为有些在点后根本没有前导 0,而有些只在最后一个八位字节有 0,有些在第三个八位字节有 0,或者两者都有。
除非有解决方案强制 ping 将其解释为点分十进制 IP 地址。
有人可以帮忙吗?
谢谢
答案1
您可以执行以下操作:
我假设每个 IP 都以文本形式位于一个单元格中。现在将此单元格转换为列(使用“文本到列”功能),指定
.
(点)作为分隔符。它们现在将以数字形式分布在接下来的 4 个连续单元格中,前导零现在应该消失了使用函数连接(有关详细信息,请参阅 Excel 帮助),并通过在每个字符串后添加 4 个数字来连接它们
.
。现在您应该有一个具有相同 IP 的单元格,但不包括所有前导零。
答案2
关于什么
=INT(MID(A1,1,3)) & "." &
INT(MID(A1,5,3)) & "." &
INT(MID(A1,9,3)) & "." &
INT(MID(A1,13,3))
答案3
这个使用SUBSTITUTE
:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE("@."&TRIM(C5),".0","."),".0","."),"@.","")
首先,它修剪 IP 周围的空格(在 中C5
),添加前缀@.
,.0
用替换.
两次,然后删除添加的前缀@.
。
答案4
按时完成(我必须将公式从意大利语翻译成英语......而且我只处理 LibreOffice......)无论如何,假设 IP 地址在 A 列,我建议这样做:
=CONCATENATE(VALUE(MID(A1,1,3)),".",VALUE(MID(A1,5,3)),".",VALUE(MID(A1,9,3)),".",VALUE(MID(A1,13,3)))