写一个java方法, 把字符串每隔4位分割,中间加上符号"-"形成新的字符, 且新字符最后一位不能是"-"
时间: 2023-08-12 21:05:14 浏览: 67
可以使用正则表达式和String类的replaceAll方法来实现:
```java
public static String splitString(String str) {
String regex = "(.{4})";
String replacement = "$1-";
String result = str.replaceAll(regex, replacement);
if (result.endsWith("-")) {
result = result.substring(0, result.length() - 1);
}
return result;
}
```
这个方法的实现思路是先定义一个正则表达式,将字符串按照每4个字符分割。然后使用replaceAll方法将匹配到的子串替换成原来的子串加上一个连接符"-"(这个连接符可以根据需要修改)。最后,如果新字符串的最后一位是连接符"-", 则去掉这个连接符,返回新字符串。
下面是一个使用例子:
```java
public static void main(String[] args) {
String str = "1234567890abcdef";
String result = splitString(str);
System.out.println(result);
}
```
输出结果为:
```
1234-5678-90ab-cdef
```
相关问题
写一个java方法, 截取字符串, 每4位截取一次
好的,下面是一个Java方法,可以将输入的字符串每四个字符截取一次:
```java
public static String splitString(String input) {
StringBuilder output = new StringBuilder();
for (int i = 0; i < input.length(); i += 4) {
output.append(input.substring(i, Math.min(input.length(), i + 4)));
output.append(" ");
}
return output.toString().trim();
}
```
这个方法将输入字符串的每四个字符截取一次,并在每个截取后添加一个空格。最后返回整个字符串。如果输入字符串的长度不是4的倍数,则最后一组会截取剩余的字符。
java 写一个方法将一个字符串按“/”分割后 取最后一段
您好!可以使用Java的split()方法将字符串按照"/"分割,然后取分割后数组的最后一个元素作为最后一段。以下是一个示例方法:
```java
public static String getLastSegment(String str) {
String[] segments = str.split("/");
return segments[segments.length - 1];
}
```
您可以调用该方法并传入相应的字符串参数,它将返回最后一段。例如:
```java
String str = "abc/def/ghi";
String lastSegment = getLastSegment(str);
System.out.println(lastSegment); // 输出 "ghi"
```
请注意,上述方法假设输入的字符串中至少包含一个"/",否则将抛出数组越界异常。在实际使用中,您可能需要添加适当的错误处理。希望能对您有所帮助!如果您还有其他问题,请随时提问。