如何实现字符串在指定位置换行?

qq1212 2009-11-26 12:52:58
比如这样的一串字符串str
1111,22222,33333,44444,555555555,6666666,11111,22222222,33333333333,4444444444,5555555,666,11111111,2222222,33333333333,4444444,55555,66666

如何实现在每六个逗号处回车换行,最终显示
1111,22222,33333,44444,555555555,6666666
11111,22222222,33333333333,4444444444,5555555,666
11111111,2222222,33333333333,4444444,55555,66666

...全文
644 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
kevin-yy 2009-11-26
  • 打赏
  • 举报
回复

String str = "1111,22222,33333,44444,555555555,6666666,11111,22222222,33333333333,4444444444,5555555,666,11111111,2222222,33333333333,4444444,55555,66666";
System.out.println(str.replaceAll("((?:[^,]+,){5}[^,]+),", "$1\n")); // 如果是html换行, 将\n换为<br/>
// 输出
// 1111,22222,33333,44444,555555555,6666666
// 11111,22222222,33333333333,4444444444,5555555,666
// 11111111,2222222,33333333333,4444444,55555,66666
  • 打赏
  • 举报
回复
	public static void main(String[] args){
String s="1111,22222,33333,44444,555555555,6666666,11111,22222222,33333333333,4444444444,5555555,666,11111111,22";
char[] c=s.toCharArray();

int commaCount=0;
for(int i=0,len=c.length;i<len;i++){
if(c[i]==','){
commaCount++;
}

if(commaCount==6){
c[i]='\n';
commaCount=0;
}
}

System.out.println(new String(c));
}
zhuzeitou 2009-11-26
  • 打赏
  • 举报
回复
	public static void main(String[] args) {
String str = "1111,22222,33333,44444,555555555,6666666,11111,22222222,33333333333,4444444444,5555555,666,1111111";
String strArr[] = str.split(",");
for (int i = 0; i < strArr.length; i++)
System.out.print(strArr[i] + (i%6==5||i==strArr.length-1?"\n":","));
}
千游 2009-11-26
  • 打赏
  • 举报
回复
public static void main(String[] args) {
String str = "1111,22222,33333,44444,555555555,6666666,11111,22222222,33333333333,4444444444,5555555,666,11111111,2";
String[] str2 = str.split(",");
String s = "";
for (int i = 0; i < str2.length; i++) {
if (i < (str2.length / 6) * 6) {
if ((i + 1) % 6 == 0) {
s = s + str2[i];
System.out.println(s);
s = "";
} else {
s = s + str2[i] + ",";
}
} else {
if (i == str2.length - 1) {
s = s + str2[i];
System.out.println(s);
} else {
s = s + str2[i] + ",";
}
}
}
}
aellonxie 2009-11-26
  • 打赏
  • 举报
回复
String arr[]=Str.split(',');
String Get_String="";
for(int i=0;i<arr.lenght;i++)
{
Get_Str+=arr[i]+",";
if(i%6==0)
{
Get_Str+="<br/>";
}
if(i==arr.lenght-1)
{
break;
}
}
gao11811 2009-11-26
  • 打赏
  • 举报
回复
用slip分一下,然后6个一加不就行了
苍蝇①号 2009-11-26
  • 打赏
  • 举报
回复

public class TestJ {

public static void main(String args[]){
String str = "1111,22222,33333,44444,555555555,6666666,11111,22222222,33333333333,4444444444,5555555,666,1111111";
Pattern p = Pattern.compile("([^,]+,[^,]+,[^,]+,[^,]+,[^,]+,[^,]+),");
Matcher m = p.matcher(str);
while(m.find()){
System.out.println(m.group(1));
}
}


}

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧