Heim >Java >javaLernprogramm >Welche Methoden gibt es zum Abfangen von Strings in Java?

Welche Methoden gibt es zum Abfangen von Strings in Java?

WBOY
WBOYnach vorne
2023-04-18 20:19:0120667Durchsuche

1 .substring()

Dies ist eine häufiger verwendete Methode.

Diese Methode hat zwei Formen:

substring(int beginIndex); //提取从索引位置开始至结尾处的字符串部分
substring(int beginIndex,int endIndex); //提取beginIndex开始到endIndex的字符串部分

Beispielcode:

        String str = "你好,Java练习生";
        //substring(int beginIndex);
        String substring1 = str.substring(3);

        //substring(int beginIndex,int endIndex);
        String substring2 = str.substring(3, 7);

        System.out.println(substring1);//Java练习生
        System.out.println(substring2);//Java

Es ist zu beachten, dass: Die Zählung beginnt bei 0. Wenn die Zeichenfolgenlänge überschritten wird, wird ein Fehler gemeldet:

java.lang.StringIndexOutOfBoundsException: String index out of range:

Schematische Darstellung der Berechnung position

Welche Methoden gibt es zum Abfangen von Strings in Java?

2 split()+regulärer Ausdruck

wird nicht häufig verwendet, ist aber in bestimmten Situationen besonders nützlich.

Format: 字符串.split("指定分隔符");–Gibt ein Array zurück

Beispiel (mit englischen Kommas als Trennzeichen):

        String str = "good,good,study,day,day,up";
        String[] split = str.split(",");

        for (String s:
             split) {
            System.out.println(s);
        }

Welche Methoden gibt es zum Abfangen von Strings in Java?

3 StringUtils.substring()

Sie müssen die Toolklasse StringUtils importieren. Eine Kombination vieler Methoden.

Da jeder unterschiedliche Werkzeuge verwendet, erfasse ich nur einen Typ.

Maven-Import:

        <dependency>
            <groupId>com.lispcast</groupId>
            <artifactId>org.apache.commons.lang</artifactId>
            <version>2.5.0</version>
        </dependency>
  • String substring(String str, int start): Vermeiden Sie das abnormale Abrufen eines Teilstrings aus dem angegebenen String.

  • String-Teilzeichenfolge (String str, int start, int end): Dadurch kann verhindert werden, dass ungewöhnlicherweise eine Teilzeichenfolge aus der angegebenen Zeichenfolge abgerufen wird.

  • String substringAfter(String str,String-Trennzeichen): Ruft die Teilzeichenfolge nach dem ersten Vorkommen des Trennzeichens ab.

  • String substringAfterLast(String str,String-Trennzeichen): Ruft die Teilzeichenfolge nach dem letzten Vorkommen des Trennzeichens ab.

  • String substringBefore(String str,String-Trennzeichen): Ruft die Teilzeichenfolge vor dem ersten Vorkommen des Trennzeichens ab.

  • String substringBeforeLast(String str,String-Trennzeichen): Ruft die Teilzeichenfolge vor dem letzten Vorkommen des Trennzeichens ab.

  • String substringBetween(String str,String tag): Ruft einen String ab, der zwischen zwei Instanzen desselben Strings verschachtelt ist.

  • String substringBetween(String str, String open, String close): Ruft den String ab, der zwischen zwei Strings verschachtelt ist.

Test:

String str = "大家好,我是练习两年半的个人练习生,cxk";

        //- String substring(String str,int start):避免异常地从指定的String获取一个子字符串。
        String substring1 = StringUtils.substring(str, 4);
        
        //- String substring(String str,int start, int end):可避免异常地从指定的String获取一个子字符串。
        String substring2 = StringUtils.substring(str, 4, 7);
        
        //- String substringAfter(String str,String separator):在第一次出现分隔符后获取子字符串。
        String substringAfter = StringUtils.substringAfter(str, ",");
        
        //- String substringAfterLast(String str,String separator):在最后一次出现分隔符之后获取子字符串。
        String substringAfterLast = StringUtils.substringAfterLast(str, ",");
        
        //- String substringBefore(String str,String separator):在第一次出现分隔符之前获取子字符串。
        String substringBefore = StringUtils.substringBefore(str, ",");
        
        //- String substringBeforeLast(String str,String separator):在最后一次出现分隔符之前获取子字符串。
        String substringBeforeLast = StringUtils.substringBeforeLast(str, ",");
        
        //- String substringBetween(String str,String tag):获取嵌套在同一String的两个实例之间的String。
        String substringBetween1 = StringUtils.substringBetween(str, ",");
        
        // - String  substringBetween(String str, String open, String close):获取嵌套在两个字符串之间的字符串。
        String substringBetween2 = StringUtils.substringBetween(str, "好", "的");

        System.out.println(substring1);
        System.out.println(substring2);
        System.out.println(substringAfter);
        System.out.println(substringAfterLast);
        System.out.println(substringBefore);
        System.out.println(substringBeforeLast);
        System.out.println(substringBetween1);
        System.out.println(substringBetween2);

Welche Methoden gibt es zum Abfangen von Strings in Java?

Das obige ist der detaillierte Inhalt vonWelche Methoden gibt es zum Abfangen von Strings in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen