RegexToolkit alat sederhana untuk mempermudah penggunaan regular expressions (regex) di JavaScript
Alat ini dirancang agar fleksibel dan ramah pengguna, memungkinkan pencocokan teks literal (escape otomatis) atau menggunakan regex mentah sesuai kebutuhan.
- Semua pola default di-escape untuk mencocokkan teks literal, sehingga pengguna tidak perlu memahami karakter khusus regex.
- Dengan opsi
useRawPattern
, pengguna dapat menggunakan pola regex mentah.
- Semua tipe data akan dikonversi ke string sebelum diproses.
- Mendukung operasi seperti
test
,match
,replace
,split
, danextractGroups
.
npm install regex-toolkit
import { RegexToolkit } from 'regex-toolkit'
const { RegexToolkit } = require('regex-toolkit')
Buat instance baru dengan pola regex dan flag opsional.
const regex = new RegexToolkit('Halo', 'g') // Default escape
Pola default di-escape untuk mencocokkan teks literal.
console.log(regex.test('Halo Halo!')) // true
console.log(regex.match('Halo Halo!')) // ['Halo', 'Halo']
Jika ingin menggunakan pola regex mentah.
regex.updatePattern('Halo\\.', 'g', true) // Gunakan pola mentah
console.log(regex.match('Halo. Halo.')) // ['Halo.', 'Halo.']
Mengganti teks yang cocok dengan regex.
regex.updatePattern('Halo') // Escape otomatis
console.log(regex.replace('Halo, Apa kabar?', 'Hi')) // Hi, Apa kabar?
Pisahkan string berdasarkan pola regex.
regex.updatePattern(',') // Escape otomatis
console.log(regex.split('1,2,3,4')) // ['1', '2', '3', '4']
Ekstrak grup yang cocok dari pola regex.
regex.updatePattern('(Halo) (Dunia)', '', true) // Regex mentah
console.log(regex.extractGroups('Halo Dunia')) // ['Halo', 'Dunia']
Cek detail pola regex saat ini.
console.log(regex.getDetails())
/* Output:
{
pattern: 'Halo',
flags: 'g',
useRawPattern: false
}
*/
-
pattern
(string): Pola regex awal. Default adalah string kosong. -
flags
(string): Flag regex opsional sepertig
,i
, dll. -
useRawPattern
(boolean): Jikatrue
, menggunakan regex mentah; jikafalse
, pola akan di-escape.
Mengubah pola regex dengan opsi untuk menggunakan regex mentah.
-
pattern
(string): Pola regex baru. -
flags
(string): Flag regex baru. -
useRawPattern
(boolean): Gunakan regex mentah jikatrue
.
Menguji apakah input cocok dengan pola regex.
-
input
(any): Teks atau data yang akan diuji. -
Return:
- (boolean) Hasil pengujian.
Mencocokkan semua hasil sesuai dengan pola regex.
-
input
(any): Teks atau data yang akan dicocokkan. -
Return:
- (array|null) Array hasil pencocokan.
Mengganti teks yang cocok dengan pola regex.
-
input
(any): Teks yang akan diubah. -
replacement
(string): Pengganti teks. -
Return:
- (string) Hasil penggantian.
Memisahkan string berdasarkan pola regex.
-
input
(any): Teks yang akan dipisahkan. -
Return:
- (array) Array hasil pemisahan.
Mengekstrak grup dari hasil pencocokan.
-
input
(any): Teks yang akan diproses. -
Return:
- (array) Array grup yang cocok.
Mendapatkan detail pola regex saat ini.
-
Return:
- (object) Objek dengan properti:
-
pattern
(string): Pola regex. -
flags
(string): Flag regex. -
useRawPattern
(boolean): Apakah menggunakan regex mentah.
Metode statis untuk melindungi teks literal (escape karakter regex).
-
text
(string): Teks yang akan di-escape. -
Return:
- (string) Teks yang sudah di-escape.