Mẫu biểu thức

Tạo biểu thức có giới hạn 6 – 30 ký tự, yêu cầu bắt buộc phải có chữ thường, số, ký tự đặc biệt(@#$ %, chữ hoa

 

((?=.* [a - z])(?=.* d)(?=.* [@#$ %])(?=.* [A - Z]).{ 6, 30})

Code trên được chia ra thành từng đoạn như sau:

 

( (?=.*[a-z]) (?=.*d) (?=.*[@#$%]) (?=.*[A-Z]) .{6,30} )

(?=.*[a-z]) : Bắt buộc phải có ít nhất 1 ký tự chữ cái viết thường.

(?=.*d) : Bắt buộc phải có ít nhất 1 chữ số trong chuỗi.

(?=.*[@#$%]) : Bắt buộc phải có ít nhất 1 ký tự đặc biệt trong các ký tự @#$%.

((?=.*[A-Z]) : Bắt buộc phải có ít nhất 1 ký tự chữ in hoa.

{6,30} : Giới hạn chiều dài cả chuỗi từ 6 đến 30 ký tự.

Bạn không muốn dùng điều kiện nào trong các điều kiện ở trên thì xóa khối đó đi khỏi biểu thức.

Demo trong java:

Giải sử chuỗi password người dùng nhập được lưu vào biến tên là password.

Cách thực hiện:

String bieu_thuc = "((?=.*[a-z])(?=.*d)(?=.*[@#$%])(?=.*[A-Z]).{6,30})";
if( password.matches( bieu_thuc ) ){
   System.out.println("Bạn đã nhập đúng định dạng");
}else{ System.out.println("Bạn nhập sai định dạng"); }

Chúc bạn thành công.