Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi.

Oleh Yuvraj Chandra
MembagikanMenciakMembagikanMembagikanMembagikanSurel

Ekspresi reguler membutuhkan waktu untuk membiasakan diri, jadi mulailah dengan contoh-contoh ini untuk memeriksa detail pengguna.

Ekspresi reguler adalah alat pemrograman integral yang dapat Anda gunakan untuk banyak tugas praktis sehari-hari. Anda dapat menggunakan ekspresi reguler untuk menelusuri, mencocokkan, atau mengurai teks. Dengan pola yang tepat, Anda dapat memvalidasi beberapa detail akun pengguna yang paling umum.

Anda dapat menggunakan ekspresi reguler dengan banyak bahasa atau alat, termasuk Python dan JavaScript.

Regex untuk Memvalidasi Nama Pengguna

Pertimbangkan nama pengguna yang hanya valid jika memenuhi kondisi berikut:

  1. Jumlah karakter harus antara 5 dan 15. (Anda dapat menentukan rentang yang berbeda sesuai dengan kebutuhan Anda, tetapi lakukan perubahan yang sesuai pada regex.)
  2. instagram viewer
  3. String hanya boleh berisi karakter alfanumerik dan/atau garis bawah (_).
  4. Karakter pertama string harus abjad.

Kode yang digunakan dalam proyek ini tersedia di a repositori GitHub dan gratis untuk Anda gunakan di bawah lisensi MIT.

Regex berikut memenuhi kondisi di atas dan dapat memvalidasi nama pengguna:

^[A-Za-z]\\w{4,14}$

Jika Anda tidak nyaman dengan ungkapan di atas, periksa panduan pemula untuk ekspresi reguler Pertama. Ini adalah pendekatan Python untuk memvalidasi nama pengguna:

impor ulang

defcheckUsername(nama belakang):
regex = "^[A-Za-z]\\w{4,14}$"
r = kompilasi ulang (regex)

jika (ulang.mencari(R, nama belakang)):
mencetak("Sah")
kalau tidak:
mencetak("Tidak valid")

nama pengguna1 = "yuvraj_chandra"
checkUsername (namapengguna1)

nama pengguna2 = "ja7&^%87"
checkUsername (namapengguna2)

Menjalankan kode ini akan mengonfirmasi bahwa nama pengguna pertama valid tetapi yang kedua tidak:

Demikian pula, Anda dapat memvalidasi nama pengguna dalam JavaScript menggunakan kode berikut:

fungsicheckUsername(pengguna) {
jika(/^[A-Za-z][A-Za-z0-9_]{4,14}$/.tes (pengguna)) {
konsol.log('Sah');
} kalau tidak {
konsol.log('Tidak valid');
}
}

checkUsername('yuvraj_chandra');
checkUsername('ja7&^%87');

Anda dapat menggunakan kode ini untuk memvalidasi formulir HTML menggunakan ekspresi reguler.

Regex untuk Memvalidasi Alamat Email

Regex untuk memvalidasi alamat email tidak sempurna. Tidak ada regex yang disepakati secara universal untuk memvalidasi alamat email. Ini sepenuhnya bermuara pada definisi valid Anda.

Di bawah ini adalah daftar kondisi yang dapat memvalidasi sebagian besar alamat email:

  1. Nama pengguna hanya boleh berisi karakter alfanumerik, garis bawah, tanda pisah, dan/atau titik.
  2. String id email harus memiliki satu karakter @.
  3. Nama domain hanya boleh berisi karakter alfanumerik, garis bawah, atau tanda hubung.
  4. Harus ada titik setelah nama domain.
  5. Ekstensi domain hanya boleh berisi karakter alfanumerik, garis bawah, atau tanda hubung.
  6. Panjang ekstensi domain harus antara 2 dan 4.

Regex berikut memenuhi ketentuan di atas dan dapat memvalidasi alamat email:

^[\w.-]+@([\w-]+\.)+[\w-]{2,4}$

Ini adalah pendekatan Python untuk memvalidasi alamat email:

impor ulang

defcheckEmailId(surel):
regex = "^[\w.-]+@([\w-]+\.)+[\w-]{2,4}$"
r = kompilasi ulang (regex)
jika (ulang.mencari(R, surel)):
mencetak("Sah")
kalau tidak:
mencetak("Tidak valid")

email1 = "[email protected]"
checkEmailId (email1)

email2 = "abc@def@gmail.kahscg"
checkEmailId (email2)

Sekali lagi, output mengonfirmasi alamat email pertama valid sedangkan yang kedua tidak valid:

Anda dapat memvalidasi email dalam JavaScript menggunakan kode berikut:

fungsicheckEmailId(surel) {
jika (/^[\w.-]+@([\w-]+\.)+[\w-]{2,4}$/.test (email)) {
menghibur.log('Valid');
} kalau tidak {
menghibur.log('Tidak Valid');
}
}

checkEmailId("[email protected]");
checkEmailId("abc@[email protected]");

Periksa Kekuatan Kata Sandi Menggunakan Ekspresi Reguler

Kata sandi yang kuat sangat penting dari perspektif keamanan. Anda perlu memastikan bahwa pengguna akhir memiliki kata sandi yang cukup kuat sehingga orang lain tidak dapat mengakses akun mereka.

Aturan berikut memastikan kekuatan kata sandi aplikasi Anda kuat:

  1. Jumlah minimum karakter harus 8.
  2. String harus memiliki setidaknya satu digit.
  3. String harus memiliki setidaknya satu karakter huruf besar.
  4. String harus memiliki setidaknya satu karakter huruf kecil.
  5. String harus memiliki setidaknya satu karakter khusus.

Regex berikut memenuhi ketentuan di atas dan dapat membantu memastikan kata sandi yang lebih kuat:

(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9])(?=.{ 8,})

Anda dapat memeriksa kekuatan kata sandi di Python menggunakan kode berikut:

impor ulang

defperiksa Kekuatan Kata Sandi(kata sandi):
regex = "(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9])(?=.{ 8,})"
r = kompilasi ulang (regex)

jika (ulang.mencari(R, kata sandi)):
mencetak("Kata sandi yang kuat")
kalau tidak:
mencetak("Kata kunci lemah")

kata sandi1 = "Hiuahd$5jawd"
checkPasswordStrength (kata sandi1)

kata sandi2 = "my_password"
checkPasswordStrength (kata sandi2)

Menjalankan kode ini akan mengonfirmasi bahwa kata sandi pertama kuat sedangkan kata sandi kedua lemah:

Anda dapat memeriksa kekuatan kata sandi dalam JavaScript menggunakan kode berikut:

fungsiperiksa Kekuatan Kata Sandi(kata sandi) {
jika (/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9])(?=.{8,})/.tes (kata sandi)) {
konsol.log('Kata sandi yang kuat');
} kalau tidak {
konsol.log('Kata kunci lemah');
}
}
periksaKekuatanPassword('Hiuahd$5jawd');
periksaKekuatanPassword('my_password');

Ekspresi Reguler untuk Mencocokkan Tanggal yang Valid

Jika Anda ingin memeriksa dengan cepat apakah tanggal yang diberikan dalam format tanggal tradisional atau tidak, Anda dapat melakukannya dengan menggunakan regex.

Ekspresi reguler berikut cocok dengan tanggal mm/dd/yyyy format:

^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20 )\d\d$

Regex untuk tanggal memiliki beberapa batasan, tidak memvalidasi tanggal seperti 31 Februari. Itu hanya memvalidasi apakah string yang diberikan terlihat seperti tanggal atau tidak.

Kode Python berikut memvalidasi tanggal masuk mm/dd/yyyy format:

impor ulang

defcheckDateFormat(tanggal):
regex = "^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20 )\d\d$"
r = kompilasi ulang (regex)
jika(ulang.mencari(R, tanggal)):
mencetak("Sah")
kalau tidak:
mencetak("Tidak valid")

tanggal1 = "03/21/2002"
periksaFormatTanggal (tanggal1)

tanggal2 = "15/21/2002"
periksa Format Tanggal (tanggal2)

Sekali lagi, output mengonfirmasi bahwa format tanggal pertama valid, tetapi format tanggal kedua tidak valid:

Anda dapat memvalidasi tanggal di mm/dd/yyyy format dalam JavaScript menggunakan kode berikut:

fungsicheckDateFormat(tanggal) {
jika(/^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19| 20)\d\d$/.test (tanggal)) {
konsol.log('Sah');
} kalau tidak {
konsol.log('Tidak valid');
}
}

periksaFormatTanggal('03/21/2002');
periksaFormatTanggal('15/21/2002');

Validasi String Kosong Menggunakan Ekspresi Reguler

Anda dapat memeriksa apakah suatu string kosong menggunakan ekspresi reguler berikut:

^$

Di bawah ini adalah pendekatan Python untuk validasi string kosong:

impor ulang

defcheckEmptyString(str):
regex = "^$"
r = kompilasi ulang (regex)

jika (ulang.mencari(R, str)):
mencetak("Tali yang diberikan adalah kosong")
kalau tidak:
mencetak("String yang diberikan tidak kosong")

str1 = ""
checkEmptyString (str1)

str2 = "Ini bukan string kosong"
checkEmptyString (str2)

Keluaran berikut menunjukkan bahwa string pertama yang diberikan kosong sedangkan yang kedua tidak:

Gunakan kode JavaScript berikut untuk memeriksa apakah string kosong atau tidak:

fungsicheckEmptyString(str) {
jika (/^$/.test (str)) {
konsol.log('String yang diberikan kosong');
} kalau tidak {
konsol.log('String yang diberikan tidak kosong');
}
}

periksaStringKosong('');
periksaStringKosong('Ini bukan string kosong');

RegEx untuk Memvalidasi Kode ZIP (Kode Pos AS)

Anda dapat memvalidasi kode ZIP (Kode Pos AS) dalam format lima digit dan sembilan digit (disebut ZIP+4) menggunakan ekspresi reguler berikut:

^[0-9]{5}(?:-[0-9]{4})?$

Di bawah ini adalah kode Python untuk memvalidasi kode ZIP:

impor ulang

defmemvalidasiZIPCode(kode):
regex = "^[0-9]{5}(?:-[0-9]{4})?$"
r = kompilasi ulang (regex)

jika (ulang.mencari(R, kode)):
mencetak("Sah")
kalau tidak:
mencetak("Tidak valid")

kode1 = "76309"
memvalidasiZIPCode (kode1)

kode2 = "83468-2348"
memvalidasiZIPCode (kode2)

kode3 = "234445"
memvalidasiZIPCode (kode3)

Menjalankan kode ini akan mengonfirmasi bahwa kode ZIP pertama dan kedua valid, tetapi yang ketiga tidak:

Gunakan kode JavaScript berikut untuk memvalidasi kode ZIP menggunakan regex:

fungsimemvalidasiZIPCode(kode) {
jika (/^[0-9]{5}(?:-[0-9]{4})?$/.tes (kode)) {
konsol.log('Sah');
} kalau tidak {
konsol.log('Tidak valid');
}
}

memvalidasiZIPCode('76309');
memvalidasiZIPCode('83468-2348');
memvalidasiZIPCode('234445');

Verifikasi Input Pengguna Dengan Kode Kuat

Anda telah mempelajari cara memvalidasi detail akun pengguna menggunakan ekspresi reguler. Memvalidasi detail ini membuat kode kuat dan membantu mengatasi masalah keamanan dan bug yang tidak diinginkan. Kode yang kuat memberikan pengalaman yang aman dan terjamin bagi pengguna Anda.

Anda harus memastikan bahwa Anda memvalidasi data input baik di sisi klien atau sisi server agar selalu aman dari peretas.

Bagaimana Menerapkan Validasi Formulir Sisi Klien Dengan JavaScript

Baca Selanjutnya

MembagikanMenciakMembagikanMembagikanMembagikanSurel

Topik-topik terkait

  • Pemrograman
  • Piton
  • JavaScript

Tentang Penulis

Yuvraj Chandra (95 Artikel Dipublikasikan)

Yuvraj adalah lulusan Ilmu Komputer dari University of Delhi, India. Dia bersemangat tentang Pengembangan Web Full Stack, Python, dan Blockchain. Saat dia tidak sedang menulis, dia menjelajahi kedalaman berbagai teknologi.

Selebihnya Dari Yuvraj Chandra

Komentar

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan