字符串截取


方法一:通過split()

此方法返回的是一個字符串數組類型。

 

1.只傳一個參數:split(String regex)

 

將正則傳入split(),根據給定正則表達式的匹配拆分此字符串。不過通過這種方式截取會有很大的性能損耗,因為分析正則非常耗時。

 

public class day1011 {
    public static void main(String[]args){
        String str="hsybcyusdgyg@163.com";
        String[] str1=str.split("y");
        for(int i=0;i<str1.length;i++){
            System.out.println(str1[i].toString());
        }
    }
}

 

運行結果:

 

hs

bc

usdg

g@163.com

2.傳入兩個參數:split(String regex,int limit)

 

regex -- 正則表達式分隔符。

 

limit -- 分割的份數。

 

將正則和份數傳入split()。根據給定正則表達式的匹配和想要分割的份數來拆分此字符串。

 

public class day1011 {
    public static void main(String[]args){
        String str="hsybcyusdgyg@163@com";
        String[] str1=str.split("@",2);
        for(int i=0;i<str1.length;i++){
            System.out.println(str1[i].toString());
        }
    }
}

 

運行結果:

 

hsybcyusdgyg

163@com

 

方法二:通過subString()方法來進行字符串截取

1、只傳一個參數:subString(int beginIndex)

將字符串從索引號為beginIndex開始截取,一直到字符串末尾。(注意索引值從0開始);

 

public class day1011 {
    public static void main(String[]args){
        String str="hsybcyusdgyg@163@com";
        String st2=str.substring(5);
        System.out.println(st2);
    }
}

 

運行結果:

 

yusdgyg@163@com

 

2、傳入兩個參數:substring(int beginIndex, int endIndex)

從索引號beginIndex開始到索引號endIndex結束(返回結果包含索引為beginIndex的字符不包含索引endIndex的字符),如下所示:

 

public class day1011 {
    public static void main(String[]args){
        String str="hsybcyusdgyg@163@com";
        String st2=str.substring(2,7);
        System.out.println(st2);
    }

 

運行結果:

 

ybcyu

3、根據某個字符截取字符串

這里根據”@”截取字符串(也可以是其他子字符串)

 

public class day1011 {
    public static void main(String[]args){
        String str="hsybcyusdgyg@163@com";
        String st2=str.substring(2,str.indexOf("@"));
        System.out.println(st2);
    }
}

 

運行結果:

 

ybcyusdgyg

 

歡迎大家批評指正,指出問題,謝謝!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM