Ungkapan biasa ialah corak yang membolehkan bot mengesahkan format input pengguna — contohnya, untuk memastikan input ialah nombor telefon dan bukan yang lain.

Untuk membandingkan menggunakan ungkapan biasa, anda perlu menetapkan jenis padanan kepada "RegEx match".
Ungkapan biasa hendaklah ditulis dalam pencetus itu sendiri, bukan dalam pembolehubah yang digunakan untuk padanan!
Semasa mengumpul data, pengguna sering memasukkan sesuatu selain daripada apa yang diminta. Berikut ialah aliran biasa untuk mengesahkan input nombor telefon. Jika pengguna tidak memasukkan nombor telefon yang sah, bot akan menggesa mereka untuk mencuba semula.

Blok input nombor telefon mempunyai dua sambungan keluar: satu tanpa sebarang pencetus, dan satu lagi dengan pencetus yang menggunakan ungkapan biasa untuk memadankan nombor telefon.
^(\+)?((\d{2,3}) ?\d|\d)(([ -]?\d)|( ?(\d{2,3}) ?)){5,12}\d$
Aliran ini menggunakan dua sambungan untuk mengendalikan pengesahan nombor telefon:
-
Sambungan utama (nombor sah)
- Pencetus: Nombor telefon yang diformat dengan betul.
- Tindakan: Menambah nombor pada permohonan dan meneruskan.
-
Sambungan sandaran (input tidak sah)
- Keutamaan: Lebih rendah daripada sambungan utama.
- Pencetus: Sebarang input yang bukan nombor telefon yang sah.
- Tindakan: Memaklumkan pengguna tentang ralat dan mengarahkan mereka untuk mencuba semula.
Ini memastikan pengguna hanya maju selepas memberikan data yang sah, sambil menerima maklum balas segera tentang sebarang ralat.
Senarai ungkapan biasa yang berguna:
-
Input Numerik hanya digit bermula dengan 1:
^[1-9]+[0-9]*$ -
Input Numerik hanya digit bermula dengan 0:
^[0-9]+[0-9]*$ -
Nombor kad kredit:
[0-9]{13,16} -
Nombor telefon am:
^(\+)?((\d{2,3}) ?\d|\d)(([ -]?\d)|( ?(\d{2,3}) ?)){5,12}\d$ -
Huruf dan nombor (Latin):
^[a-zA-Z0-9]+$ -
Domain (cth. abcd.com):
^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}$ -
URL (cth. abcd.com):
(https?):((//)|(\\\\))+[\w\d:#@%/;$()~_?\+-=\\\.&]* -
IPv4:
((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?) -
IPv6:
((^|:)([0-9a-fA-F]{0,4})){1,8}$ -
Nama pengguna (dengan had 2-20 aksara, yang boleh berupa huruf dan nombor, aksara pertama mestilah huruf):
^[a-zA-Z][a-zA-Z0-9-_\.]{1,20}$ -
Kata laluan (Huruf kecil dan besar Latin, nombor):
^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).*$ -
Kata laluan kukuh (huruf besar, huruf kecil, nombor/aksara khas, minimum 8 aksara):
(?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$ -
Tarikh dalam format YYYY-MM-DD:
[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])
KEMASKINI. Pengesahan tarikh yang lebih ketat:
(19|20)\d\d-((0[1-9]|1[012])-(0[1-9]|[12]\d)|(0[13-9]|1[012])-30|(0[13578]|1[02])-31) -
Tarikh dalam format DD/MM/YYYY:
(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d -
Tarikh dalam format DD.MM.YYYY:
(0[1-9]|[12][0-9]|3[01])[.](0[1-9]|1[012])[.](19|20)\d\d -
Nombor integer dan titik terapung (titik sebagai pemisah perpuluhan)
\-?\d+(\.\d{0,})? -
UUID:
^[0-9A-Fa-f]{8}\-[0-9A-Fa-f]{4}\-[0-9A-Fa-f]{4}\-[0-9A-Fa-f]{4}\-[0-9A-Fa-f]{12}$ -
Latitud atau Longitud:
-?\d{1,3}\.\d+ -
KEMASKINI. E-mel:
^[-\w.]+@([A-z0-9][-A-z0-9]+\.)+[A-z]{2,4}$ -
KEMASKINI. URL
~^(?:(?:https?|ftp|telnet)://(?:[a-z0-9_-]{1,32}(?::[a-z0-9_-]{1,32})?@)?)?(?:(?:[a-z0-9-]{1,128}\.)+(?:ru|su|com|net|org|mil|edu|arpa|gov|biz|info|aero|inc|name|[a-z]{2})|(?!0)(?:(?!0[^.]|255)[0-9]{1,3}\.){3}(?!0|255)[0-9]{1,3})(?:/[a-z0-9.,_@%&?+=\~/-]*)?(?:#[^ '\"&]*)?$~i -
KEMASKINI. Masa dalam format HH:MM:SS:
^([0-1]\d|2[0-3])(:[0-5]\d){2}$ -
KEMASKINI. Alamat Mac:
([0-9a-fA-F]{2}([:-]|$)){6}$|([0-9a-fA-F]{4}([.]|$)){3}
Terdapat sejumlah besar ungkapan biasa yang tersedia. Jika anda tidak menemui yang anda perlukan dalam senarai ini, adalah idea yang baik untuk menggunakan enjin carian.
Anda boleh menguji ungkapan biasa dengan mudah di laman web seperti: https://regex101.com/