Metacharacter . (จุด) จับคู่ ทุกตัวอักษร ยกเว้น newline (โดย default)
เพื่อพิมพ์ตัวอักษรทั้งหมดด้วย regex:
- คอมไพล์ regex ด้วย
Pattern.compile() - สร้าง Matcher ด้วย
matcher() - วนลูป
find()และพิมพ์group()ทุกครั้ง
ตัวอย่าง
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
public static void main(String args[]) {
String regex = ".";
Scanner sc = new Scanner(System.in);
System.out.println("Enter your input string: ");
String input = sc.nextLine();
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(input);
while (m.find()) {
System.out.println(m.group());
}
}
}
ผลลัพธ์
Enter your input string: This is a sample text
T
h
i
s
i
s
a
s
a
m
p
l
e
t
e
x
t
อธิบาย
.จับคู่ตัวอักษรเดี่ยวทุกตัว (รวม space, punctuation, ตัวเลข)find()หาต่อไปเรื่อยๆ จนจบสตริง- แต่ละครั้งจับคู่ได้ 1 ตัวอักษร → พิมพ์แต่ละบรรทัด
ตัวเลือกเพิ่มเติม
| Regex | จับคู่ | หมายเหตุ |
|---|---|---|
. | ทุกตัวอักษร ยกเว้น newline | Default behavior |
(?s). หรือ Pattern.DOTALL | ทุกตัวอักษร รวม newline | Single-line mode |
\\S | Non-whitespace | ข้าม space, tab, newline |
\\w | Word character [a-zA-Z0-9_] | ตัวอักษร ตัวเลข underscore |