ใน windows "\r\n" ทำหน้าที่เป็นตัวคั่นบรรทัด นิพจน์ทั่วไป "\\r?\\n" ตรงกับส่วนท้ายบรรทัด
วิธี split() ของคลาส String ยอมรับค่าที่แสดงนิพจน์ปกติและแยกสตริงปัจจุบันออกเป็นอาร์เรย์ของโทเค็น (คำ) โดยถือว่าสตริงระหว่างการเกิดขึ้นของการจับคู่สองรายการเป็นโทเค็นเดียว
ดังนั้น หากคุณต้องการแยกสตริงที่มีการลงท้ายบรรทัดเป็นตัวคั่น ให้เรียกใช้เมธอด split() บนสตริงอินพุตโดยส่งนิพจน์ทั่วไปที่ระบุข้างต้นเป็นพารามิเตอร์
ตัวอย่าง
import java.util.Scanner;
public class RegexExample {
public static void main(String[] args) {
System.out.println("Enter your input string: ");
Scanner sc = new Scanner(System.in);
String input = " sample text \r\n line1 \r\n line2 \r\n line3 \r\n line4";
String[] strArray = input.split("\\r?\\n");
for (int i=0; i<strArray.length; i++) {
System.out.println(strArray[i]);
}
}
} ผลลัพธ์
Enter your input string: sample text line1 line2 line3 line4