เมธอด split() ของคลาส String รับ regex แล้วแยกข้อความเป็นโทเคน คืนค่าเป็นอาร์เรย์สตริง
ตัวอย่าง 1: ใช้ String.split()
import java.util.Scanner;
public class Example {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter input text: ");
String input = sc.nextLine();
String[] strArray = input.split("\\d");
for (int i = 0; i < strArray.length; i++) {
System.out.println(strArray[i]);
}
}
}
ผลลัพธ์
Enter input text: 1Ramu 2Raju 3Radha 4Rahman 5Rachel
Ramu
Raju
Radha
Rahman
Rachel
ตัวอย่าง 2: ใช้ Pattern.split()
สามารถแยกสตริงด้วยเมธอด split() ของคลาส Pattern ได้เช่นกัน รับสตริง แล้วแยกตาม regex ภายใน คืนค่าอาร์เรย์สตริง
import java.util.Scanner;
import java.util.regex.Pattern;
public class SplittingString {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter input text: ");
String input = sc.nextLine();
String regex = "\\d";
Pattern pattern = Pattern.compile(regex);
String[] strArray = pattern.split(input);
for (int i = 0; i < strArray.length; i++) {
System.out.println(strArray[i]);
}
}
}
ผลลัพธ์
Enter input text: 1Ramu 2Raju 3Radha 4Rahman 5Rachel
Ramu
Raju
Radha
Rahman
Rachel
สรุป
String.split(regex)- ใช้ง่าย สำหรับกรณีทั่วไปPattern.compile(regex).split(input)- ใช้ Pattern object ซ้ำได้ เหมาะสำหรับแยกหลายครั้งด้วย regex เดียวกัน- ทั้งสองให้ผลลัพธ์เหมือนกัน