Berkenalan dengan Regular Expression di Bahasa Pemrograman Java

Regular Expression (regex) adalah serangkaian karakter yang membentuk sebuah search pattern (pola pencarian). Regex dapat berupa karakter tunggal, atau pola lain yang lebih rumit. Regex biasanya digunakan dalam operasi pencarian teks atau replace teks.

Mari kita simak contoh berikut

String s1 = "Java";

Terdapat sebuah variabel dengan tipe data String yang berisi "Java". Kita dapat mendefinisikan pattern sebagai berikut

String regex1 = "J[a-z][a-z][a-z]";
String regex2 = "J[a-z]*";

Variabel regex1 dan regex2 tersebut memuat pattern yang cocok dengan String "Java", penjelasannya adalah sebagai berikut

[a-z] : Pola berarti memilih salah satu karakter 
huruf kecil antara a, b, c, ..., atau z
J[a-z][a-z][a-z] : Sebuah string yang berisi 4 karakter Karakter pertama adalah huruf J, 
karakter kedua hingga keempat adalah
salah satu karakter huruf kecil antara a, b, c, ..., atau z
J[a-z]* : Pola ini sama dengan pola sebelumnya dengan penulisan yang lebih singkat
karakter * artinya perulangan dari pola [a-z]

Contoh penerapannya dapat dilihat di https://github.com/ardhiesta/oop_regex/blob/master/src/com/oop/regex/Example1.java

Pola dalam regex dapat digunakan dengan method matches untuk mencari ada tidaknya String yang memenuhi pola regex tersebut, misalnya yang ditunjukkan pada potongan code berikut
String s1 = "Java";
String regex1 = "J[a-z][a-z][a-z]";
String regex2 = "J[a-z]*";
String regex3 = "j[a-z]*";
System.out.println(s1+" matches "+regex1+": "+s1.matches(regex1));
System.out.println(s1+" matches "+regex2+": "+s1.matches(regex2));
System.out.println(s1+" matches "+regex3+": "+s1.matches(regex3));

Comments