Java中的模式拆分(CharSequence,int)方法与示例
Pattern类的split(CharSequence, int)方法,用于拆分作为参数传递给方法的给定字符序列,围绕该模式的匹配项。返回的数组包含由该方法创建的输入序列的每个子字符串。数组中的子字符串按照它们在输入中出现的顺序排列。如果此模式不匹配输入的任何子序列,则结果数组只有一个元素,即字符串形式的输入序列。作为 int 传递的 limit 参数有助于计算应用模式的次数并影响结果数组的长度。如果限制 n 大于零,则该模式将最多应用 n – 1 次。如果 n 为非正数或零,则将尽可能多次应用该模式。
句法:
public String[] split?(CharSequence input, int limit)
参数:此方法接受两个参数,一个输入表示要拆分的字符序列,另一个限制表示描述中提到的结果阈值。
返回值:此方法返回通过围绕此模式的匹配拆分输入计算的字符串数组。
下面的程序说明了 split(CharSequence, int) 方法:
方案一:
// Java program to demonstrate
// Pattern.split(CharSequence) method
import java.util.regex.*;
public class GFG {
public static void main(String[] args)
{
// create a REGEX String
String REGEX = "geeks";
// create the string
// in which you want to search
String actualString
= "Welcome to geeks for geeks";
// create a Pattern using REGEX
Pattern pattern = Pattern.compile(REGEX);
// create limit to 2
// so it can applied at most limit - 1 time
int limit = 2;
// split the text
String[] array
= pattern.split(actualString, limit);
// print array
for (int i = 0; i < array.length; i++) {
System.out.println("array[" + i
+ "]=" + array[i]);
}
}
}
输出:
array[0]=Welcome to
array[1]= for geeks
方案二:
// Java program to demonstrate
// Pattern.split(CharSequence) method
import java.util.regex.*;
public class GFG {
public static void main(String[] args)
{
// create a REGEX String
String REGEX = "ee";
// create the string
// in which you want to search
String actualString
= "aaeebbeecceeddee";
// create a Pattern using REGEX
Pattern pattern = Pattern.compile(REGEX);
// create limit to 2
// so it can applied at most limit - 1 time
int limit = 0;
// split the text
String[] array
= pattern.split(actualString, limit);
// print array
for (int i = 0; i < array.length; i++) {
System.out.println("array[" + i
+ "]=" + array[i]);
}
}
}
输出:
array[0]=aa
array[1]=bb
array[2]=cc
array[3]=dd
参考: https: Java Java.lang.CharSequence, int)