Regex URL Friendly: Sintaks, Generator, dan Implementasi Terbaik

Pola Regex untuk URL Friendly

Untuk menghasilkan URL slug yang bersih (URL friendly), Anda memerlukan ekspresi reguler (regex) yang mampu memfilter karakter non-alfanumerik dan menggantinya dengan tanda hubung (hyphen). Pola regex standar yang digunakan dalam pengembangan web adalah mencari karakter yang bukan huruf (a-z) atau angka (0-9) dan menggantinya dengan karakter pemisah.

Berikut adalah sintaks regex yang paling umum digunakan dalam berbagai bahasa pemrograman untuk membersihkan string menjadi slug:

/[^a-z0-9]+/g

Tabel Implementasi Regex Berdasarkan Bahasa

BahasaFungsi/MetodePola Regex
JavaScriptstring.replace(/[^a-z0-9]+/g, '-')/[^a-z0-9]+/g
PHPpreg_replace('/[^a-z0-9]+/', '-', $str)/[^a-z0-9]+/
Pythonre.sub(r'[^a-z0-9]+', '-', text)r'[^a-z0-9]+'

Rekomendasi Generator URL Slug

Jika Anda tidak ingin menulis kode dari nol, berikut adalah daftar alat (tools) yang dapat digunakan untuk menghasilkan slug secara instan dan akurat:

Nama ToolURLKelebihan
Slugifyslugify.onlineSangat cepat, mendukung berbagai bahasa
URL Slug Generatorurlsluggenerator.comOpsi kustomisasi karakter pemisah
ConvertCaseconvertcase.netFitur konversi case (lowercase) otomatis

Langkah Teknis Pembuatan Slug

  1. Normalisasi: Ubah seluruh string menjadi huruf kecil (lowercase) untuk menjaga konsistensi URL.
  2. Pembersihan: Gunakan regex /[^a-z0-9]+/ untuk mengganti spasi atau karakter spesial dengan tanda hubung (-).
  3. Trim: Hapus tanda hubung di awal atau akhir string agar URL tidak terlihat berantakan (misal: -artikel-saya- menjadi artikel-saya).
  4. Validasi: Pastikan panjang slug tidak melebihi batas karakter yang disarankan untuk SEO (biasanya 50-60 karakter).

Troubleshooting Umum

  • Karakter Non-ASCII: Jika slug mengandung karakter aksen (seperti Γ©, ΓΌ), gunakan fungsi transliterasi (seperti iconv di PHP) sebelum menerapkan regex agar karakter tersebut berubah menjadi huruf latin standar (e, u).
  • Duplikasi: Selalu tambahkan pengecekan database untuk memastikan slug yang dihasilkan unik dan tidak bentrok dengan konten lain.