Java menyediakan paket (package) java.util.regex untuk menyamakan pola (pattern) dari sekumpulan huruf, angka atau kombinasi keduanya dengan regular expressions. Paket java.util.regex memiliki tiga kelas yaitu Pattern, Matcher dan PatternSyntaxException. Regular expression sendiri merupakan rangkaian karakter dan simbol. Regular expression terdiri dari bermacam-macam operator dan bentuk lain untuk membentuk ekspresi yang lebih komplek.
Berikut ini adalah tabel beberapa predefined character classes dan quantifier di bahasa pemrograman Java:
Tabel Predefined Character Classes
Kelasa-Kelas Karakter
Keterangan
\d
Dapat berupa dijit mana saja.
\D
Dapat berupa apa saja kecuali dijit.
\w
Dapat berupa karakter kata mana saja.
\W
Dapat berupa apa saja kecuali karakter kata.
\s
Dapat berupa white-space apa saja (spase, tab, newline dll).
\S
Dapat berupa apa saja kecuali white-space.
Tabel Quantifier
Quantifier
Keterangan
*
Memperbolehkan kemunculan pola sebanyak 0 atau lebih.
+
Memperbolehkan kemunculan pola sebanyak 1 atau lebih.
?
Memperbolehkan kemunculan pola sebanyak 0 atau 1 kali.
{n}
Memperbolehkan kemunculan pola sebanyak n kali.
{n, }
Memperbolehkan kemunculan pola paling sedikit n kali.
{n, m}
Memperbolehkan kemunculan pola antara n dan m (m termasuk) kali.
| Kelasa-Kelas Karakter | Keterangan |
|---|---|
| \d | Dapat berupa dijit mana saja. |
| \D | Dapat berupa apa saja kecuali dijit. |
| \w | Dapat berupa karakter kata mana saja. |
| \W | Dapat berupa apa saja kecuali karakter kata. |
| \s | Dapat berupa white-space apa saja (spase, tab, newline dll). |
| \S | Dapat berupa apa saja kecuali white-space. |
| Quantifier | Keterangan |
|---|---|
| * | Memperbolehkan kemunculan pola sebanyak 0 atau lebih. |
| + | Memperbolehkan kemunculan pola sebanyak 1 atau lebih. |
| ? | Memperbolehkan kemunculan pola sebanyak 0 atau 1 kali. |
| {n} | Memperbolehkan kemunculan pola sebanyak n kali. |
| {n, } | Memperbolehkan kemunculan pola paling sedikit n kali. |
| {n, m} | Memperbolehkan kemunculan pola antara n dan m (m termasuk) kali. |
Sebagai contoh, regular expression [1-9]\\d* menetapkan pola karakter numerik. [1-9] memiliki arti bahwa numerik pertama hanya satu angka yang mana saja selain angka 0, \\d dapat berupa angka yang mana saja termasuk angka 0 dan karakter * yang mengikuti subexpression \\d memiliki arti bahwa jumlah angka berapapun dari angka manapun diperbolehkan. Karakter * memberi perluasan arti pada \\d yang diikuti.
\\d adalah salah satu dari beberapa kelas karakter terdefinisi (predefined character classes), sedangkan * adalah quantifier (penentu jumlah). Untuk menentukan himpunan karakter yang tidak ada di character class, dapat digunakan [ ], sedangkan jangkauan karakter dapat menggunakan dash (-). [1-9] adalah contoh penetapan himpunan karakter yang tidak termasuk dalam character classes.
Berikut ini adalah beberapa contoh pola regular expression di pemrograman Java.
Renderer Dan Editor Tabel
| Quantifier | Keterangan | Contoh |
|---|---|---|
| [1-9]\\d*[.]?\\d* | Karakter numerik pertama tidak boleh 0, dapat mempunyai titik (.) dan diikuti oleh sejumlah karakter numerik lain. | 806578.076 |
| [0][1-9]*[-][1-9]\\d* | Karakter numerik pertama harus 0 diikuti oleh tanda dash (-) dan sejumlah karakter numerik lain yang juga tidak boleh dimulai dengan 0. | 021-5212828 |
| [0][.]\\d* | Karakter numerik pertama harus 0, diikuti oleh tanda titik (.) dan sejumlah karakter numerik yang lain. | 0.01234 |
| [A-Z][a-zA-Z]* | Karakter pertama harus berupa huruf besar dan diikuti oleh sejumlah karakter huruf lain (bisa huruf besar atau kecil). | Hindrianto |
| [1-9]\\d*\\s+[A-Z][a-zA-Z]* | Karakter pertama harus numerik bukan 0, diikuti oleh sejumlah karakter numerik, diikuti satu atau lebih white space, diikuti satu karakter huruf besar dan sejumlah karakter huruf (bisa huruf besar atau kecil). | 123 Street |
ARTIKEL TERKAIT
ARTIKEL LAINNYA
-
Pengantar Pemrograman Grafis Java Kelas Container
- Details
- Java
- May 2023
- 20751
-
Memberi Garis Tepi (Border) Pada Gambar Di Microsoft Word
- Details
- Office Word
- June 2023
- 56826
-
Memahami Konsep Konstruktor Berjenjang (Constructor Chaining) Di Java
- Details
- Java
- May 2023
- 11990
-
Menggunakan Custom Renderer Pada Tabel Di Pemrograman Java
- Details
- Java
- May 2023
- 10167
-
Cara Mengkonversi PDF ke JPG Di Adobe Photoshop
- Details
- Photoshop
- September 2023
- 4149
-
Cara Menyembunyikan Kolom Atau Baris Di Microsoft Excel
- Details
- Office Excel
- June 2023
- 143501
-
Mengaktifkan Fitur Smart Search Di CMS Joomla 2.5
- Details
- Joomla
- October 2025
- 8967
-
Buffalo Ministation HD-PATU3 Dengan Konektor Thunderbolt
- Details
- Hardware
- May 2023
- 8830
-
Menyembunyikan Nilai 0 (Zero) Di Sel Microsoft Excel
- Details
- Office Excel
- June 2023
- 107743
-
Menyembunyikan File Dan Folder Dari Windows Search
- Details
- Sistem Operasi
- April 2023
- 7767