Regex CCCD / CMND Việt Nam
Cập nhật: 24 Tháng 6, 2026
Dùng biểu thức /^(\d{9}|\d{12})$/m để Khớp số CMND 9 chữ số hoặc CCCD 12 chữ số. Trang này có công cụ kiểm tra trực tiếp cùng 6 ví dụ đã được đối chiếu (3 hợp lệ, 3 không hợp lệ).
edit_note Văn bản kiểm tra
analytics Kết quả
012345678
038201005123
079201001234
12345
0123 abcd
01234567890
code Dùng trong code
const re = /^(\d{9}|\d{12})$/m;
const matches = str.match(re);
preg_match_all('~^(\d{9}|\d{12})$~m', $str, $matches);
print_r($matches);
import re
pattern = re.compile(r"^(\d{9}|\d{12})$", re.MULTILINE)
matches = pattern.findall(text)
re := regexp.MustCompile(`^(\d{9}|\d{12})$`)
matches := re.FindAllString(str, -1)
Trang này cung cấp biểu thức chính quy /^(d{9}|d{12})$/m để Khớp số CMND 9 chữ số hoặc CCCD 12 chữ số. Bạn có thể kiểm tra trực tiếp với dữ liệu của mình bằng công cụ phía trên, xem các ví dụ đã đối chiếu và sao chép sẵn mã cho JavaScript, PHP, Python và Go. Mẫu thuộc nhóm Xác thực dữ liệu.
tips_and_updates Ghi chú & lưu ý chuyên môn
Chứng minh nhân dân cũ có 9 chữ số, Căn cước công dân gắn chip có 12 chữ số — pattern này chấp nhận cả hai để dữ liệu cũ và mới cùng đi qua. Đây chỉ là kiểm tra ĐỘ DÀI/chữ số; nó không xác thực mã tỉnh hay số kiểm tra. Tuyệt đối không log đầy đủ số CCCD ra file/console vì đây là dữ liệu cá nhân nhạy cảm.
Câu hỏi thường gặp
Regex CCCD / CMND Việt Nam như thế nào? expand_more
Biểu thức "^(\d{9}|\d{12})$" khớp được những ví dụ nào? expand_more
Dùng biểu thức này trong JavaScript ra sao? expand_more
Mẫu regex liên quan: Xác thực dữ liệu
Xem tất cảRegex mật khẩu mạnh
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^\w\s]).{8,}$
Regex số điện thoại Việt Nam
^(0|\+84)(3|5|7|8|9)\d{8}$
Regex mã số thuế Việt Nam
^\d{10}(-\d{3})?$
Regex tên người dùng (username)
^[a-zA-Z][a-zA-Z0-9_]{2,15}$
Regex biển số xe Việt Nam
^\d{2}[A-Z]{1,2}[-\s]?\d{4,5}$
Regex số thẻ ngân hàng (16 số)
^\d{4}[ -]?\d{4}[ -]?\d{4}[ -]?\d{4}$
Regex kiểm tra Email
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}