最近在实习时,项目方面要处理一个特变长的字符串截取方面的操作。
@Test
public void test02(){
String arrs = "occ_status,record_id,flag,py_opera,py_time,order_sn,order_no,order_sn,record_id,order_sn," +
"plan_occ_time,order_sn,occ_time,sort_opera,sort_time,flag,ward_sn,order_no,ward_sn,occ_time,group_no" +
",charge_code,product_code,compare_type,charge_code,drugname,specification,license_no,serial,manufactory," +
"pack_unit,charge_code,serial,group_no,manu_name,manu_code,name,code,order_sn,enc_id,patient_encounter_id," +
"ward,bed_no,name,patient_id,code,name,unit_sn,ward_sn,box_status,name,deleted_flag,box_code,group_no," +
"group_no,patient_id,occ_time,page_no,ward_sn,dept_sn,order_no,page_type,parent_order,order_sn," +
"order_sn,plan_occ_time";
String[] str = arrs.split("\\,");//一逗号(,)为分隔符,均需要在分隔符前面加上双斜杠(\\)才行
for (int i = 0 ; i <str.length ; i++ ) {
System.out.println(str[i]);
}
}
后面总结一下截取操作:
1.在java.lang包中有String.split()方法,返回是一个数组。
2.均需要在分隔符之前加上双斜杠(\\)才能编译通过。
3.如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如,“acount=? and uu =? or n=?”,把三个都分隔出来,可以用String.split(“and|or”)。
String arr = "acount=? and uu =? or n=";
String[] count = arr.split("and|or");
for (int i = 0 ; i <count.length ; i++ ) {
System.out.println(count[i]);
}
其他的一些字符操作:
string str="12345abc45678";
int i=3;
- 取字符串的前i个字符:
str=str.Substring(0,i);
- 去掉字符串的前i个字符:
str=str.Remove(0,i);
- 从右边开始取i个字符:
str=str.Substring(str.Length-i);
- 从右边开始去掉i个字符:
str=str.Substring(0,str.Length-i);
- 如果字符串中有"abc"则替换成"ABC":
str=str.Replace("abc","ABC");