ホームページ > Java > &#&チュートリアル > Javaで文字列をインターセプトする方法は何ですか?

Javaで文字列をインターセプトする方法は何ですか?

WBOY
リリース: 2023-04-18 20:19:01
転載
20680 人が閲覧しました

1 .substring()

これは、より一般的に使用される方法です。

このメソッドには 2 つの形式があります:

substring(int beginIndex); //提取从索引位置开始至结尾处的字符串部分
substring(int beginIndex,int endIndex); //提取beginIndex开始到endIndex的字符串部分
ログイン後にコピー

インスタンス コード:

        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
ログイン後にコピー

次の点に注意してください: カウントは 0 を超える場合、0 から始まります。文字列の長さが長すぎる場合、エラーが報告されます:

java.lang.StringIndexOutOfBoundsException: String index out of range:
ログイン後にコピー

計算位置図

Javaで文字列をインターセプトする方法は何ですか?

#2 Split() 正規表現

は一般的には使用されませんが、特定の状況では特に役立ちます。

形式: String.split("specify delimiter");–配列を返します

例 (区切り文字として英語のカンマを使用):

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

        for (String s:
             split) {
            System.out.println(s);
        }
ログイン後にコピー

Javaで文字列をインターセプトする方法は何ですか?

3 StringUtils.substring()

StringUtils ツール クラスをインポートする必要があります。多くの方法の組み合わせ。

誰もが異なるツールを使用しているため、記録されるのは 1 つのタイプのみです。

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): 指定された String から部分文字列を異常に取得しないようにします。

  • String substring(String str,int start, int end): 指定された String から部分文字列が異常に取得されることを回避できます。

  • String substringAfter(String str,String separator): 最初に出現した区切り文字の後の部分文字列を取得します。

  • String substringAfterLast(String str,String separator): 最後に出現した区切り文字の後の部分文字列を取得します。

  • String substringBefore(String str,String separator): 最初に出現する区切り文字の前の部分文字列を取得します。

  • String substringBeforeLast(String str,String separator): 区切り文字が最後に出現する前の部分文字列を取得します。

  • String substringBetween(String str,String tag): 同じ String の 2 つのインスタンス間にネストされた String を取得します。

  • String substringBetween(String str, String open, String close): 2 つの文字列の間にネストされた文字列を取得します。

テスト:

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);
ログイン後にコピー

Javaで文字列をインターセプトする方法は何ですか?

以上がJavaで文字列をインターセプトする方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート