validators.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. const validators = {
  2. // 验证手机号码(简单验证,仅针对常见格式)
  3. phone: {
  4. pattern: /^1[3-9]\d{9}$/,
  5. message: '请输入正确的手机号码'
  6. },
  7. // 验证电子邮箱
  8. email: {
  9. pattern: /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/,
  10. message: '请输入正确的电子邮箱地址'
  11. },
  12. // 验证身份证号码(简单验证,不考虑所有特殊情况)
  13. idCard: {
  14. pattern: /^\d{15}(\d{2}[a-zA-Z0-9])?$/,
  15. message: '请输入正确的身份证号码'
  16. },
  17. // 验证纯数字(可用于验证数量、页码等)
  18. number: {
  19. pattern: /^\d+$/,
  20. message: '请输入数字'
  21. },
  22. // 验证是否为正整数
  23. positiveInteger: {
  24. pattern: /^[1-9]\d*$/,
  25. message: '请输入正整数'
  26. },
  27. // 验证是否为非负整数(包含0和正整数)
  28. nonNegativeInteger: {
  29. pattern: /^\d*$/,
  30. message: '请输入非负整数'
  31. },
  32. // 验证是否包含中文
  33. chinese: {
  34. pattern: /[\u4e00-\u9fa5]+/,
  35. message: '请输入包含中文的内容'
  36. },
  37. // 验证是否只包含英文字母(大写或小写)
  38. englishLetters: {
  39. pattern: /^[a-zA-Z]+$/,
  40. message: '请输入只包含英文字母的内容'
  41. },
  42. // 验证是否只包含英文字母和数字
  43. englishLettersAndNumbers: {
  44. pattern: /^[a-zA-Z0-9]+$/,
  45. message: '请输入只包含英文字母和数字的内容'
  46. },
  47. // 验证密码强度(至少包含一个大写字母、一个小写字母、一个未雨绸缪、一个数字和一个特殊字符,长度至少8位)
  48. passwordStrength: {
  49. pattern: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^\w\s]).{8,}$/,
  50. message:
  51. '请输入至少包含一个大写字母、一个小写字母、一个数字和一个特殊字符,且长度至少8位的密码'
  52. },
  53. // 验证URL格式(简单验证)
  54. url: {
  55. pattern: /^(https?|ftp):\/\/[^\s/$.?#].[^\s]*$/,
  56. message: '请输入正确的URL地址'
  57. },
  58. // 大于0小于1且最多两位小数验证
  59. decimalRange: {
  60. pattern: /^(0\.\d{1,2}|0[1-9]\d{0,1}\.\d{1,2}|1)$/,
  61. message: '请输入大于0小于1且最多两位小数的数值'
  62. },
  63. money:{
  64. pattern: /^(([1-9]{1}\d*)|([0]{1}))(\.\d{1,2})?$/,
  65. message:'请输入正确的金额'
  66. },
  67. };
  68. export default validators;