java常用字符串处理

阅读更多

   字符串最常用的三个处理方法(经常记错记混,特此mark一下):

indexOf()

java.lang.String.indexOf() 的用途是在一个字符串中寻找一个字的位置,同时也可以判断一个字符串中是否包含某个字符,返回值是下标,没有则是-1;

String str1 = "abcdefg";
    int result1 = str1.indexOf("ab");
    if(result1 != -1){
        System.out.println("字符串str中包含子串“ab”"+result1);
    }else{
        System.out.println("字符串str中不包含子串“ab”"+result1);
    }

 substring()

根据下标截取字符串

String str="Hello world!"
System.out.println(str.substring(3));
输出:lo world! (一个参数代表截取这个从这个下标开始到之后的内容)
String str="Hello world!"
System.out.println(str.substring(3,7))

输出:lo w (截取下标从3开始,到7之前的字符串)

split()

将字符串按特定字符分割(特殊字符需要转义:split("\\|"),split("\\*"))

String abc="a,b,c,e";
String[] a=abc.split(",");
for(String t:a){
System.out.println(t);
}
输出:a b c e (按逗号分隔)

replace() 、replaceAll()、replaceFirst()

replace 的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串) replaceAll 的参数是regex,即基于正则表达式的替换,比如,可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号;replaceFirst() 替换第一次出现的这个方法也是基于规则表达式的替换:

String src = new String("ab43a2c43d");     
System.out.println(src.replace("3","f"));=>ab4f2c4fd.     
System.out.println(src.replace('3','f'));=>ab4f2c4fd.     
System.out.println(src.replaceAll("\\d","f"));=>abffafcffd.    
System.out.println(src.replaceAll("a","f"));=>fb43fc23d.    
System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d   
System.out.println(src.replaceFirst("4","h"));=>abh32c43d.

 

转载于:https://my.oschina.net/u/3734816/blog/3000026

你可能感兴趣的:(java常用字符串处理)