最初は 2 つのパラメータを持つ split メソッドです:
Function:
指定された正規表現 (正規表現) の文字列を分割します
最初のパラメータは、シンボル で渡される 区切り文字タイプです。たとえば、次のようになります。 "," など (任意の文字列を指定できます)
2 番目のパラメータは、この文字列を表す整数制限で渡されます。 n 個の部分に分割します (n はここにあります)
戻り値:
このメソッドによって返される 配列 各 部分文字列 # が含まれますこの文字列の ##。これらの部分文字列は、一致した正規表現 (つまり、入力された最初のパラメータ正規表現) で終わるか、文字列の Ending で終わります。
注:
public class test { public static void main(String[] args) { String str = ",,1,2,3,4"; // 注意这里字符串开头就匹配到了逗号 String[] s = str.split(",",10);// 这里先取10,后文介绍第二个参数 for (String string : s) { System.out.println("子字符串"+string); } System.out.println(s.length); } }
空の 部分文字列
limit パラメーターはパターンが適用される回数を制御するため、結果の # の長さに影響します。 ## 配列 ###。 (ここでの意味は、limit の値が結果の配列の長さを制御するということです)
上記の解釈は次のとおりです: (1) limit の入力が # の場合##正の数値 の場合、このパターンは制限 - 最大 1 回適用されます (つまり、入力正規表現は文字列内の制限 - 1 回と一致するためにのみ使用されます)。配列の長さはそれより大きくなりません。制限より大きい場合、配列の最後のエントリには、最後に一致する区切り文字を除くすべての入力が含まれます (つまり、区切られたパターンは前から後ろまでです)。誰もが理解できるコードを入力してください:
public class test { public static void main(String[] args) { String str = "1,2,3,4"; String[] s = str.split(",",2);//这里输入limit为2,即分成2部分 for (String string : s) { System.out.println("子字符串"+string); } System.out.println(s.length); } }
実行結果: 文字列は 2 つの部分文字列に分割され、分割パターンは前から後ろへ
(2) 入力の場合制限はzero で、パターンは可能な限り何度でも適用され、結果の配列は任意の長さ
を持つことができ、最後の空の文字列は破棄されます (つまり、すべて文字列内の正規表現区切り文字が一致し、空の文字列は破棄されます。コードは次のとおりです。 public class test {
public static void main(String[] args) {
String str = "1,2,3,4,,,";// 这里后面逗号之间的空字符串将被丢弃
String[] s = str.split(",",0);
for (String string : s) {
System.out.println("子字符串"+string);
}
System.out.println(s.length);
}
}
実行結果: 末尾の空の文字列は結果に表示されません。 array
negative の場合、パターンは可能な限り何度も適用され、配列は次のようになります。任意の長さ。 (末尾の空文字列は失われません)
public class test { public static void main(String[] args) { String str = ",1,2,3,4,"; String[] s = str.split(",",-1);//limit值为负数 for (String string : s) { System.out.println("子字符串"+string); } System.out.println(s.length); } }
実行結果:文字列末尾の空文字列は失われません
2.split(regex)パラメーターを 1 つだけ使用する次の分割メソッドは簡単です。
デフォルトの制限値は 0このメソッドの動作原理は、指定された正規表現パラメータとデフォルトの 0 である制限パラメータを使用して 2 パラメータの Split メソッドを呼び出すことです。したがって、末尾の空の文字列は結果の配列には含まれません。
以上がJava で String.split() を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。