CodeGym /Java Blog /Acak /Regex Java - Pencocokan
John Squirrels
Level 41
San Francisco

Regex Java - Pencocokan

Dipublikasikan di grup Acak

Apa itu Regex di Jawa?

Ekspresi reguler atau regex adalah rangkaian karakter yang membentuk suatu pola. Saat Anda mencari data apa pun, Anda dapat menggunakan pola khusus ini untuk menemukan string yang cocok. Ini bisa sesederhana satu karakter atau bisa juga pola yang lebih kompleks. Di Java, Anda memiliki paket java regex yang memiliki kelas yang menyediakan fasilitas penggunaan ekspresi reguler untuk pencarian dan manipulasi pola. Paket ini diimpor ke kode Anda dengan cara berikut.
import java.util.regex.*;

Regex Java - Pencocokan

Kelas Java Matcher menyediakan pencocokan pola dengan ekspresi reguler.
Baris kode ini mengimpor semua kelas yang tersedia dalam paket regex. Jika Anda hanya ingin mengimpor kelas Matcher , Anda dapat mengimpornya menggunakan baris kode berikut.
import java.util.regex.Matcher;
Paket java regex memiliki tiga kelas:
  1. Kelas Pola : Untuk menentukan pola yang perlu dicari.

  2. Kelas Pencocokan : Untuk mencocokkan pola dalam teks dan menemukannya.

  3. Kelas PatternSyntaxException : Untuk menunjukkan kesalahan sintaksis dalam ekspresi reguler.

Cara kerjanya cukup sederhana. Pertama, Anda membuat objek Pola dari ekspresi reguler untuk menentukan pola. Kemudian objek Matcher dibuat menggunakan objek Pattern . Kelas Matcher memiliki banyak metode. Yang paling penting adalah metode match() yang mengembalikan nilai true jika ekspresi reguler cocok dengan teks, jika tidak maka akan mengembalikan false . Kelas Java Matcher memiliki banyak metode berguna lainnya untuk mengganti teks dalam string input yang menjalankan fungsi lebih kompleks daripada metode replace() di java. Hanya ada dua metode replace() di java, sedangkan kelas Matcher menyediakan banyak fungsi untuk tugas ini.

Metode Kelas Java Matcher

Beberapa metode Kelas Java Matcher dijelaskan di bawah ini.
  • boolean match() — mengembalikan nilai true jika ekspresi reguler cocok dengan polanya.

  • boolean find() — menemukan ekspresi reguler berikutnya yang cocok dengan polanya.

  • boolean find(int start) — menemukan ekspresi reguler berikutnya yang cocok dengan pola dari awal yang diberikan.

  • int start() — mengembalikan indeks awal pertandingan.

  • int end() — mengembalikan indeks akhir dari kecocokan yang dikembalikan.

  • int groupCount() — mengembalikan jumlah total grup dalam pertandingan.

  • String replaceAll(String replacement) — menggantikan setiap rangkaian pertandingan dengan pengganti yang diberikan.

  • String replaceFirst(String replacement) — menggantikan urutan pertama kecocokan dengan pengganti yang diberikan.

Contoh Pencocokan Java

Ada banyak metode yang berguna untuk kelas Matcher , namun kita akan melihat lebih jauh contoh spesifik dari metode match() .

Menggunakan metode match()

Berikut ini menunjukkan Contoh Java Matcher untuk metode match() .
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Example {

	public static void main(String[] args) {

		String regexPattern = "(.*)apple(.*)"; // this regex means that any char sequence can precede or succeed "apple"
		String firstCheck = "Apples";
		String secondCheck = "Apple";
		String thirdCheck = "apple";
		String fourthCheck = "An apple a day keeps the doctor away.";
		String fifthCheck = "green apple, yellow apple, red apple, i love all kinds of apples.";


		Pattern pattern = Pattern.compile(regexPattern);
		Matcher matcher1 = pattern.matcher(firstCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + firstCheck);
		System.out.println("Output for matches(): " + matcher1.matches() + "\n");

		Matcher matcher2 = pattern.matcher(secondCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + secondCheck);
		System.out.println("Output for matches(): " + matcher2.matches() + "\n");

		Matcher matcher3 = pattern.matcher(thirdCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + thirdCheck);
		System.out.println("Output for matches(): " + matcher3.matches() + "\n");

		Matcher matcher4 = pattern.matcher(thirdCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + fourthCheck);
		System.out.println("Output for matches(): " + matcher4.matches() + "\n");

		Matcher matcher5 = pattern.matcher(fifthCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + fifthCheck);
		System.out.println("Output for matches(): " + matcher5.matches() + "\n");
	}
}
Keluaran
Polanya adalah: (.*)apel(.*) Teks yang harus diperiksa adalah: Output Apel untuk kecocokan(): false Polanya adalah: (.*)apel(.*) Teks yang harus diperiksa adalah: Output Apple untuk kecocokan() : false Polanya adalah: (.*)apple(.*) Teks yang harus diperiksa adalah: apple Output untuk match(): true Polanya adalah: (.*)apple(.*) Teks yang harus diperiksa adalah: Sebuah apel sehari menjauhkan dokter. Output untuk match(): true Polanya adalah: (.*)apel(.*) Teks yang harus diperiksa adalah: apel hijau, apel kuning, apel merah, saya suka semua jenis apel. Output untuk pertandingan(): benar

Kesimpulan

Di akhir postingan ini, kami harap Anda sudah terbiasa dengan Kelas Java Matcher di Java. Anda telah mempelajari cara menggunakannya dalam kode Anda. Anda juga telah mempelajari cara memanggil metode match() pada Kelas Matcher . Anda dapat mencoba sendiri metode Kelas Matcher lainnya untuk memahaminya lebih mendalam. Teruslah berlatih untuk menguasai konsep lebih dalam. Sampai saat itu tiba, teruslah bertumbuh dan teruslah bersinar!
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION