gov_propagandize/utils/validator.js
2025-01-02 17:31:12 +08:00

44 lines
951 B
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 手机号验证
const isValidPhone = (phone) => {
return /^1[3-9]\d{9}$/.test(phone);
};
// 邮箱验证
const isValidEmail = (email) => {
return /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(email);
};
// URL验证
const isValidUrl = (url) => {
try {
new URL(url);
return true;
} catch {
return false;
}
};
// 身份证号验证
const isValidIdCard = (idCard) => {
return /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(idCard);
};
// 企业统一社会信用代码验证
const isValidCreditCode = (creditCode) => {
return /^[0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}$/.test(creditCode);
};
// 密码强度验证至少包含数字和字母长度8-20位
const isValidPassword = (password) => {
return /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,20}$/.test(password);
};
module.exports = {
isValidPhone,
isValidEmail,
isValidUrl,
isValidIdCard,
isValidCreditCode,
isValidPassword
};