Langsung ke konten utama

Fungsi regex (pattern) penting

pattern regex regular expression function

Proses validasi data yang akan masuk ke database (misalnya) memang harus disaring dan disesuaikan agar semua sistem tetap berjalan lancar. Karenanya dibutuhkan kode tersendiri untuk mengatur semua tidak menjadi celah hacker atau peretas situs, meski memang semua ciptaan manusia pasti ada banyak celahnya untuk diretas.

Berikut adalah pattern (regular expression) yang sering ku gunakan dalam aplikasi yang sedang dikerjakan atau maintenance:


No Handphone

Dikarenakan masih banyak project yang menggunakan nomer hape (hp), maka regex ini sangat membantu untuk proses validasi inputnya, ^(0)[0-9]{9,11}$ dengan fungsi tersebut maka akan memvalidasi hanya yang berawalan angka 0 (nol) hingga 10 atau 12 digit, selain itu maka dianggap salah. Untuk penggunaan pada PHP seperti berikut:

$re = '/^(0)[0-9]{9,11}$/';
$str = '081234567890';

preg_match_all($re, $str, $matches);

// Print the entire match result
print_r($matches);
Sedangkan untuk javascript:
const regex = /^(0)[0-9]{9,11}$/g;
const str = `081234567890`;
let m;

while ((m = regex.exec(str)) !== null) {
    // This is necessary to avoid infinite loops with zero-width matches
    if (m.index === regex.lastIndex) {
        regex.lastIndex++;
    }
    
    // The result can be accessed through the `m`-variable.
    m.forEach((match, groupIndex) => {
        console.log(`Found match, group ${groupIndex}: ${match}`);
    });
}

Digit Angka Uang

Meski Rupiah sedang berganti wajah dengan rupa yang penuh kontroversi karena mirip dengan Mata Uang negara lain, namun regex nya untuk validasi masih tetap sama yakni ^(?:[1-9]\d*|0)$. Function ini akan mengijinkan hanya 0 (nol) atau angka berapapun tanpa diawali 0 dan tanpa tanda baca seperti titik (.) maupun koma (,).
Untuk penggunaan pada PHP seperti berikut :

$re = '/^(?:[1-9]\d*|0)$/';
$str = '20000';

preg_match_all($re, $str, $matches);

// Print the entire match result
print_r($matches);
Sedangkan untuk javascript sebagai berikut:
const regex = /^(?:[1-9]\d*|0)$/g;
const str = `20000`;
let m;

while ((m = regex.exec(str)) !== null) {
    // This is necessary to avoid infinite loops with zero-width matches
    if (m.index === regex.lastIndex) {
        regex.lastIndex++;
    }
    
    // The result can be accessed through the `m`-variable.
    m.forEach((match, groupIndex) => {
        console.log(`Found match, group ${groupIndex}: ${match}`);
    });
}

Mungkin itu saja, selebihnya jika ada perubahan atau update akan disampaikan melalui post ini.

Terimakasih dan salam hangat

Toto Prayogo

Postingan populer dari blog ini

Cara menggunakan mifi

Kebutuhan akses internet kian hari kian menjadi sebuah kebutuhan primer. Kita bagaikan tidak dapat hidup tanpa keberadaan internet itu sendiri. Bahkan mungkin ada orang diluaran saya yang rela tidak makan demi akses internet. Berikut ini akan saya jelaskan pilihan mifi 4G All operator yang terbaik untuk digunakan.Apa itu mifi?Mi-Fi (baca: mifi) adalah kependekan dari Mobile Wi-Fi. Yang namanya mobile sudah pasti dapat dibawa kemana-mana dan sangat fleksibel selayaknya mobile phone yang biasa kita genggam kemana-mana. Mifi sendiri berfungsi layaknya router yang berfungsi memancarkan/menyebarkan sinyal untuk selanjutnya dapat kita gunakan untuk berselancar didunia maya.
Sebenarnya sudah jelas apa itu mifi, dan sepatutnya tidak timbul pertanyaan lebih bagusan mana antara wifi atau mifi?
Sedangkan untuk pertanyaan tentang perbedaan wifi dan mifi kalian sebagai pembaca sudah lebih paham dari mengartikan kata Mobile Wi-fi diatas.Pilihan modem mifi GSMMiFi Huawei E5577CGambar diatas adalah Mi-…

Membuat Random Words dengan Codeigniter

Sejak helperrandom_element() hadir, semua custom function mulai di-migrasi. Semua koding tidak memerlukan keahlian khusus, hanya perlu logika. Termasuk dengan generator random words yang sangat dibantu oleh kehadiran fungsi ini.IntroGenerator Random Words adalah satu yang ingin saya bagikan. Di-Codeigniter sendiri sudah hadir yang namanya random_string() yang menghasilkan string acak. Sedangkan kali ini ingin berbagi dengan kata acak yang dapat diaplikasikan untuk helper seperti captcha. Cara ini sudah saya terapkan pula untuk captcha bawaan dari CI untuk beberapa proyek web.The StepsLangkah untuk membuat random word ini cukup mudah, hanya persiapkan database yang ada, tentu yang sudah ada artikelnya agar kata acaknya keluar sesuai konten yang ada. Daripada mencari api yang menyediakan kata acak dan tentu berbayar.
Untuk kasus ini, anggap saja kita memiliki DB dengan table bernama 'news' dengan kolom 'articles'. Dengan bantuan random_element() akan memuluskan fungsi gen…

Cara mudah membuat fungsi Unique Slug pada codeigniter

Membuat URL demi meningkatkan SEO itu ternyata penting, jika suatu web/blog yang kita bangun tersebut ingin dikenal oleh publik karena kita publikasikan. Dalam kasus ini adalah membuat URL (slug) unik pada Codeigniter. Beberapa cara singkat akan diulas dalam artikel ini.IntroTidak perlu menguasai ilmu tinggi, kita hanya perlu sedikit logika saja agar URL yang kita buat menggunakan CI lebih unik. Dan cara yang dapat kita terapkan semua dapat kita ambil dalam dokumentasi CI tersebut. Ada beberapa cara yang dapat saya ulas untuk Anda, dan cara-cara ini juga yang sering saya terapkan pada banyak projek web saya.The StepsAgar URL menjadi cantik, kita gunakan helperurl_title() yang telah disediakan CI. Fungsi ini sangat membantu, jadi kita tak perlu lagi membuat fungsi baru agar URL cantik.Encrypt SlugCara ini paling dasar, saya sering menggunakan cara ini karena malas otak-atik terlalu dalam. Saya biasa menyimpan slug dengan cara ini. Efektif dan sangat mudah. Caranya dengan menggunakan f…