Trong thời đại hiện nay, để thu thập thông tin về khách hàng hay tạo những cuộc khảo sát thì thay vì tạo chúng trên một tờ giấy, đi phỏng vấn từng đối tượng hoặc khách hàng một mà vừa tốn thời gian lại vừa tốn chi phí cao thì Google đã tạo ra một giải pháp mang tên Google Form. Giải pháp lại như vậy nhưng nhiều khi khách hàng hay người sử dụng lại cố tình nhập sai thông tin, để khắc phục tình trạng này, Google cũng có riêng tính năng xác thực thông tin phản hồi Response Validation.
Cách thức hoạt động của xác thực phản hồi (Response Validation)
Xác thực phản hồi là những quy định mà bạn quy ước cho mỗi phần dữ liệu được nhập vào và bắt buộc người nhập phải tuân thủ đúng theo những quy tắc đó. Đơn cử là khi điền số điện thoại thì ta quy định người nhập phải nhập đúng 10 số, khi nhập số lượng thì phải nhiều lớn hơn số 0 và nhỏ hơn số đã quy định hay muốn viết ý kiến của người dùng thì phải đủ 200 chữ,…
Trong xác thực phản hồi, có 4 thành tố tương ứng để đưa ra quy tắc: Length (độ dài), Numbers (con số), Regular Expression (cụm từ thông dụng) và Text (văn bản).
Sau đây ADTIMIN.com sẽ đi sâu vào 4 thành tố này:
– Độ dài (Length): Số ký tự tối thiểu hoặc ký tự tối đa
– Số (Number): Ở đây là những quy ước số các phép toán tử tương ứng với thành tố.
– Cụm từ thông dụng (Regular Expression): Gồm những quy ước sau: Khớp (Matches), Không khớp (Doesn’t Match), Chứa (Contains) và không chứa (Doesn’t Contain).
– Văn bản (Text): Địa chỉ email, địa chỉ URL,…
Những cụm từ thông dụng trong xác thực phản hồi
Đối tượng ký tự
\.\*\\ | Khi dùng các ký tự đặc biệt |
\t\n\r | tab, linefeed, carriage return |
Số lượng và thay thế
a+?a{2,}? | Phù hợp càng ít càng tốt |
a{5}a{2,} | Phải là số 5 hoặc 2 hoặc hơn |
a{1,3} | Giữa 1 và 3 |
a+? | Phù hợp càng ít càng tốt |
a*a+a? | 0 hoặc nhiều, 1 hoặc nhiều, 0 hoặc 1 |
ab|cd | là ab hoặc cd |
Các loại nhóm
(?:abc) | Không tìm thấy nhóm |
(?!abc) | Không bắt đầu với |
\1 | Tham chiếu tới nhóm 1 #1 |
(abc) | Nhóm tìm thấy |
(?=abc) | Bắt đầu với |
Đối tượng chữ
[a-g] | Khoảng cách chữ từ chữ a đến chữ g |
[abc] | Chữ có thể là a, b hoặc c |
[^abc] | Không phải là chữ a, b hoặc c |
. | Sử dụng một ký tự bất kỳ nhưng không được xuống dòng |
\W\D\S | Không phải chữ, số, khoảng trắng |
\w\d\s | Chữ, số, khoảng trắng |
Các trường hợp thường thấy khác
Cách xác thực địa chỉ Email
Chúng ta hoàn toàn có thể xác thực được địa chỉ Email bằng cách chọn văn bản (Text) rồi chọn địa chỉ Email. Nhưng chúng ta cũng không thể tránh được những Email gõ sai hoặc địa chỉ Email bị lẫn với nhau. Để khắc phục điều này thì ta xác thực bằng những lỗi sai như: gmali, gmai, gaml,…
Đoạn Regex xác thực địa chỉ Email sẽ là
^[\w-\.]+@(?!.*gmai\.com|mail|gmial|gmaiil|gmeo|gmaill|gnail\.com|gmail\.con|outlook\.com\.vn|mytam\.info|mytamentertainment\.com|yhoo\.com|yaho\.com|yahu\.com|gmail\.com\.vn|gamil\.com|email\.com.*)([\w-]+\.)+[\w-]{2,4}$
Xác thực ngày tháng năm sinh
Để người dùng nhập thông tin ngày tháng năm sinh một cách chính xác nhất, chúng ta nên nhập theo quy ước “dd/mm/yy” thay vì cách nhập tự động từ Google Forms sẽ gây ra một số bất tiện nhất định.
Regex xác thực ngày tháng năm sinh sẽ như sau:
(0[1-9]|[12][0-9]|3[01])[- /.]([0-9]|0[0-9]|1[012])[- /.]\d\d\d\d$
Xác thực địa chỉ
Địa chỉ nhà là thông tin tương đối nhạy cảm và rất khó để xác thực. Tuy nhiên chúng ta vẫn có thể xác thực được thông tin này bằng cách quy ước trong khoảng 20 ký tự vừa đủ để điền thông tin cơ bản như số nhà, quận, huyện, thành phố,…
Xác thực căn cước công dân, chứng minh thư
Với độ dài của căn cước công dân gồm 12 số và chứng minh thư với 9 số thì ta sẽ sử dụng Regex không khác khác xác thực số điện thoại. Tuy nhiên vẫn có trường hợp điền những ký tự khác như dấu chấm, dấu gạch ngang và khoảng trắng thì sẽ cần xử lý theo Regex kiểu khác.
Đoạn Regex xác thực căn cước công dân hoặc chứng minh thư.
(^\w{3}[0-9]{6}$)|(^\w{1,2}[0-9]{7}$)|(^\d{9}$)|(^\d{12}$)
Thiết lập ADD-IN để sử dụng các hàm Regrex
Những hàm Regrex này về cơ bản chỉ sử dụng được trong Google Sheet, còn khi muốn sử dụng trên Excel, các bạn hãy tải thêm ADD-IN RegexExcel.