用Java写一个方法将“192.001.011.100”转为“192.1.11.100”
时间: 2023-11-12 09:09:16 浏览: 113
可以使用Java的正则表达式和字符串处理函数来实现这个功能,以下是一个示例代码:
```java
public static String convertIPAddress(String ipAddress) {
// 将IP地址按照点号分隔成4个部分
String[] parts = ipAddress.split("\\.");
// 对每个部分进行处理,去掉前导0
for (int i = 0; i < parts.length; i++) {
parts[i] = parts[i].replaceAll("^0+(?!$)", "");
}
// 拼接成新的IP地址
return String.join(".", parts);
}
```
使用示例:
```java
String ipAddress = "192.001.011.100";
String newIpAddress = convertIPAddress(ipAddress);
System.out.println(newIpAddress); // 输出:192.1.11.100
```
解释一下代码:
首先,我们将输入的IP地址按照点号分隔成4个部分,使用 `split()` 方法和正则表达式 `"\\."`。
然后,对于每个部分,我们使用 `replaceAll()` 方法和正则表达式 `"^0+(?!$)"` 去掉前导0。这个正则表达式的意思是:匹配以1个或多个0开头,但不匹配只有0的字符串。这是为了避免将0转成空字符串。
最后,使用 `String.join()` 方法将4个部分拼接成新的IP地址,点号作为分隔符。
阅读全文