如何截取String中指定字符后的字符串

kekan 2008-11-06 11:02:58
String aaa中有N个“;”(分号),如何截取指定第几个分号与下一个分号中间的字符串,和最后一个分号后的字符串?
...全文
31587 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
view8888 2008-11-06
  • 打赏
  • 举报
回复
顶4楼 很好
arthas84 2008-11-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 arthas84 的回复:]
用aaa.split(";"),返回来的是一个String数组,查一下就行了
[/Quote]
说明一下,例如String aaa = "aa;bb;cc;dd;ee",调用aaa.split(";")返回的数组就是{aa,bb,cc,dd,ee}
rosewj 2008-11-06
  • 打赏
  • 举报
回复
用split方法
import java.util.Arrays;


public class Test1 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String aaa = "sss;sdad;sad;asd;asd";
String[] b = aaa.split(";");

System.out.println(display(b,1,3));



}

public static String display(String[] str,int a,int b) {
StringBuffer sb = new StringBuffer();
for(int i=a;i<b;i++) {
sb.append(str[i]);
}
return sb.toString();


}


}
yctang 2008-11-06
  • 打赏
  • 举报
回复

package cn.com;

public class StringSplit {

/**
* @param args
*/
public static void main(String[] args) {
String str = "aa;bb;cc;dd";
String strm[] = str.split(";");
System.out.println(strm[1]); //第一个跟第二个分号间内容
System.out.println(strm[strm.length-1]);// 最后一分号内容
}

}
rosewj 2008-11-06
  • 打赏
  • 举报
回复

public class Test1 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String aaa = "sss;sdad;sad;asd;asd";
Test1 a = new Test1();
System.out.println(a.display(aaa, 3, 4));


}

public String display(String str,int a,int b) {
int count = 0;
int start = 0;
int end = 0;
for(int i=0;i<str.length();i++) {
char c = str.charAt(i);
if(c == ';') {
count ++;
if(count == a) {
start = i+1;

}
if(count == b) {
end = i;
}
}
}

return str.substring(start, end);

}


}
getter 2008-11-06
  • 打赏
  • 举报
回复
split
arthas84 2008-11-06
  • 打赏
  • 举报
回复
用aaa.split(";"),返回来的是一个String数组,查一下就行了
forchase 2008-11-06
  • 打赏
  • 举报
回复
看看下面的代码,相信能帮助你

import java.util.*;

import javax.swing.JOptionPane;

public class CompareString {
public static void main(String args[]) {
Set set = new HashSet();
// 你给的值
String value = ";1;12;16;56";
StringTokenizer st = new StringTokenizer(value, ";");
String temp[] = new String[st.countTokens()];
int i = 0;
while (st.hasMoreTokens()) {
temp[i] = new String(st.nextToken());
i++;
}
for (int j = 0; j < temp.length; j++) {
System.out.println("temp["+j+"]="+temp[j]);
}
// if(d==false){
// JOptionPane.showMessageDialog(null, "该数字不在value中");
// }
}
}

62,612

社区成员

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

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