<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # Java 分割字串教學 原文:http://zetcode.com/java/splitstring Java 拆分字符串教程展示了如何在 Java 中拆分字符串。 我們使用`String`的`split()`,`Pattern`的`splitAsStream()`和 Guava `Splitter`的`on()`方法。 `String`具有用于拆分字符串的內置方法: * `String[]` `split?(String regex)` - 將字符串拆分為給定正則表達式的匹配項 * `String[]` `split?(String regex, int limit)` - 在給定正則表達式的匹配項附近拆分此字符串 該方法返回一個拆分字符串數組。 除了`split()`方法外,`Pattern`也具有`splitAsStream()`方法。 ## 分割電話號碼 在第一個示例中,我們拆分了一個電話號碼。 `StringSplitEx.java` ```java package com.zetcode; import java.util.Arrays; public class StringSplitEx { public static void main(String[] args) { var phoneNumber = "202-555-0154"; String[] output = phoneNumber.split("-"); Arrays.stream(output).forEach(part -> System.out.println(part)); } } ``` 電話號碼通常用破折號(-)分隔。 程序使用`split()`將數字拆分為數值。 ```java var phoneNumber = "202-555-0154"; ``` 這是電話號碼。 ```java String[] output = phoneNumber.split("-"); ``` 我們用破折號將字符串分開; `split()`方法返回從主字符串分割的子字符串數組。 ```java Arrays.stream(output).forEach(part -> System.out.println(part)); ``` 我們向控制臺顯示拆分的部分。 ```java 202 555 0154 ``` 這是輸出。 ## 用點字符分割字符串 點字符在正則表達式語法中具有特殊含義。 要用點分隔字符串,我們需要對其進行轉義或使用`Pattern.quote()`。 `StringSplitDotEx` ```java package com.zetcode; import java.util.Arrays; import java.util.regex.Pattern; public class StringSplitDotEx { public static void main(String[] args) { var address = "127.0.0.1"; // String[] output = address.split("\\."); String[] output = address.split(Pattern.quote(".")); Arrays.stream(output).forEach(part -> System.out.println(part)); } } ``` 該程序將拆分 IP 地址。 ## 限制分割字符串 `limit`選項控制拆分子字符串的數量。 `SplitStringLimitEx.java` ```java package com.zetcode; import java.util.Arrays; public class SplitStringLimitEx { public static void main(String[] args) { var names = "Jane-Paul-Ferenc-David-Robert-Julia"; var output = names.split("-", 4); Arrays.stream(output).forEach(System.out::println); } } ``` 該程序將`names`字符串分為四個部分。 ```java Jane Paul Ferenc David-Robert-Julia ``` 這是輸出。 ## 分割和修剪字符串 我們通常需要刪除字符串周圍的空格字符。 `SplitStringTrimEx.java` ```java package com.zetcode; import java.util.Arrays; public class SplitStringTrimEx { public static void main(String[] args) { var input = " wood, falcon\t, sky, forest\n"; var output = input.trim().split("\\s*,\\s*"); Arrays.stream(output).forEach(System.out::println); } } ``` 要刪除空白,我們使用`trim()`。 ```java var output = input.trim().split("\\s*,\\s*"); ``` 正則表達式用逗號分隔輸入字符串,逗號前后可能有任意多個空格。 ## 用模式串分割字符串 我們可以使用流使用函數式的方式使用`Pattern`分割字符串。 `PatternCompileEx.java` ```java package com.zetcode; import java.util.regex.Pattern; import java.util.stream.Collectors; public class PatternCompileEx { public static void main(String[] args) { var phoneNumber = "202-555-0154"; var output = Pattern.compile("-") .splitAsStream(phoneNumber) .collect(Collectors.toList()); output.forEach(System.out::println); } } ``` 該示例使用`Pattern`的`splitAsStream()`方法拆分電話號碼。 ```java var output = Pattern.compile("-") .splitAsStream(phoneNumber) .collect(Collectors.toList()); ``` 我們編譯包含用于分割的字符的正則表達式。 在編譯的表達式上,我們調用`splitAsStream()`以獲取拆分子字符串流。 最后,我們將流收集到一個列表中。 ## 用 Guava 的拆分器拆分字符串 以下示例使用 Google 的 Guava 庫拆分字符串。 它使用`Splitter`類。 ```java <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>27.0.1-jre</version> </dependency> ``` 我們需要包括 Guava 的依賴項。 `SplitStringGuavaEx.java` ```java package com.zetcode; import com.google.common.base.Splitter; public class SplitStringGuavaEx { public static void main(String[] args) { var input = " falcon, \t\tforest\t, \t\t, moderate, sky\n"; var result = Splitter.on(',') .trimResults() .omitEmptyStrings() .splitToList(input); result.forEach(System.out::println); } } ``` 程序使用 Guava 的`Splitter`分割字符串。 ```java var result = Splitter.on(',') .trimResults() .omitEmptyStrings() .splitToList(input); ``` 我們使用`Splitter.on()`從輸入字符串中提取不重疊的子字符串。 `trimResults()`刪除空格字符,`omitEmptyStrings()`刪除潛在的空字符串。 結果將轉換為列表。 在本教程中,我們展示了如何在 Java 中分割字符串。 您可能也對相關教程感興趣: [Java 文件教程](/java/file/), [Java fibonacci 教程](/java/fibonacci/), [Java 創建目錄](/java/createdirectory/),[用 Java 復制文件](/java/copyfile/) , [Java Unix 時間](/java/unixtime/),[用 Java 創建文件](/java/createfile/), [Java `StringBuilder`教程](/java/stringbuilder/)和 [Java 教程](/lang/java/)。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看