"Hai, Amigo!"

"Setahu saya, Rishi sudah memberitahu anda tentang ungkapan biasa."

"Ya, ia sangat menarik."

"Bagus, sekarang saya akan memberitahu anda tentang menggunakan ungkapan biasa untuk berfungsi dengan Strings."

"Mari kita mulakan dengan soalan paling mudah:"

1) Bagaimanakah cara saya menyemak untuk melihat sama ada String sepadan dengan corak yang ditentukan oleh ungkapan biasa?

"Terdapat kaedah padanan untuk ini. Anda menghantar String yang mengandungi ungkapan biasa, dan kaedah itu mengembalikan benar atau salah."

Kaedah Contoh)
boolean matches(String regex)
String s = "Good news, everyone!";
Boolean test = s.matches("news\\.*");
Keputusan:

false (the String doesn't start with "news")

2) Bagaimanakah cara saya menggantikan semua subrentetan yang sepadan dengan rentetan yang berbeza?

"Terdapat dua kaedah untuk ini."

" Kaedah replaceAll menggantikan semua kejadian subrentetan dengan rentetan lain."

" Kaedah replaceFirst menggantikan kejadian pertama subrentetan yang diluluskan dengan rentetan tertentu."

Kaedah Contoh)
String replaceAll(String regex, String replacement)
String s = "Good news, everyone!";
String s2 = s.replaceAll ("e\\.","EX");
Keputusan:

s2 == "Good nEXs EXEXyonEX";
String replaceFirst(String regex, String replacement)
String s = "Good news, everyone!";
String s2 = s.replaceFirst("e\\.","EX");
Keputusan:

s2 == "Good nEXs, everyone!";

3) Bagaimanakah cara saya membahagikan rentetan kepada bahagian?

"Untuk ini, kami mempunyai kaedah split, yang memerlukan topeng pembatas:"

Kaedah Contoh)
String[] split(String regex)
String s = "Good news everyone!";
String[] ss = s.split("ne");
System.out.println(Arrays.toString(ss));
Keputusan (susunan tiga rentetan):

[Good , ws everyo, !]
"Good ", "ws everyo", "!";

" Kelas StringTokenizer ialah satu lagi cara untuk memisahkan rentetan kepada bahagian ."

"Kelas ini tidak menggunakan ungkapan biasa. Sebaliknya, anda hanya lulus dalam String yang mengandungi satu set pembatas. Kelebihan pendekatan ini ialah ia tidak memecahkan keseluruhan rentetan menjadi kepingan sekaligus, sebaliknya ia perlahan-lahan bergerak dari awal hingga akhir."

"Kelas ini terdiri daripada pembina dan dua kaedah. Anda perlu menghantar String yang kita pecahkan kepada pembina, bersama-sama dengan String yang mengandungi set aksara pembatas."

Kaedah nextToken mengembalikan token seterusnya (substring).

Kaedah hasMoreTokens() kembali benar jika masih terdapat subrentetan yang belum dikembalikan.

Kaedah Contoh)
boolean hasMoreTokens()

String nextToken()
String s = "Good news, everyone!";

StringTokenizer tokenizer =
new StringTokenizer(s,"ne");
while (tokenizer.hasMoreTokens())
{
String token = tokenizer.nextToken();
System.out.println(token);
}
Output skrin:

Good
ws
v
ryo
!

"Perhatikan bahawa mana-mana aksara dalam String kedua yang dihantar kepada pembina StringTokenizer dianggap sebagai pembatas."

"Sekali lagi, semuanya kelihatan jelas. Saya mungkin tidak dapat menulis kod ini sendiri dengan segera, tetapi saya faham apa yang berlaku di sini."

"Cemerlang, maka kami akan menganggap bahawa anda telah menguasai topik itu."