正则校验,中间不能连续出现

1、逗号分隔中英文字符串,不能在首尾出现,中间有且仅有一个逗号

const reg = /^(?!,)(?!.*,$)[\u4e00-\u9fa5a-zA-Z]+(?:[,][\u4e00-\u9fa5a-zA-Z]+)*$/g;

 const reg = /^(?!,)(?!.*,$)[\u4e00-\u9fa5a-zA-Z]+(?:[,][\u4e00-\u9fa5a-zA-Z]+)*$/g;
      if (reg.test(value)) {
        callback();
      } else {
        callback('只能输入中文、英文,英文逗号分隔');
      }

 

message: '只能输入中文、字母、数字、下划线、横线,多个别名用逗号隔开!',
pattern: /^(?!_)(?!.*?_$)(?!-)(?!.*?-$)[A-Za-z0-9_\u4e00-\u9fa5-]+(?:[,][A-Za-z0-9_\u4e00-\u9fa5-]+)*$/g,

2、 只能输入中文、字母、数字、下划线、横线、空格

const reg = /^(?!_)(?!.*?_$)(?!\s)(?!.*\s$)(?!-)(?!.*?-$)[A-Za-z0-9_\u4e00-\u9fa5-\s]+$/g

3、网址校验

const reg =/^([hH][tT]{2}[pP]:\/\/|[hH][tT]{2}[pP][sS]:\/\/)([\w-]+\.)+[\w-:]+(\/[\w-.\/?%&=]*)?$/g

4、必须以-*结尾

 const pattern1 = /^(?!_)(?!.*?_$)(?!-)(?!.*?-$)([a-z0-9_\u4e00-\u9fa5]+(?:[-]))+(?=[-*]$)/g 

5、身份证号校验

18位: /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/

15位:/^([1-6][1-9]|50)\d{4}\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}$/

if (value) {
                      let reg18 =
                        /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;

                      let reg15 =
                        /^([1-6][1-9]|50)\d{4}\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}$/;
                      if (reg18.test(value) || reg15.test(value)) {
                        return Promise.resolve();
                      } else {
                        return Promise.reject(new Error('请输入正确的身份证号码'));
                      }
                    } else {
                      return Promise.resolve();
                    }

6、手机号

/^1[3-9]\d{9}$/

7、车牌号

const reg = /^(([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z](([0-9]{5}[DF])|([DF]([A-HJ-NP-Z0-9])[0-9]{4})))|([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z][A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳使领]))$/

8、文件类型

文档:let reg =/docx|pdf|xls|doc|txt/;

图片:let reg = /(?:png|jpg|jpeg|gif|svg)$/;

  const pic ='散间距.Png'
    const letter = '待办.1243.txt'
    // let reg1 = /.docx|.pdf|.xls|.doc|.txt/;
    let reg1 = /docx|pdf|xls|doc|txt/;
    let reg2 = /(?:png|jpg|jpeg|gif|svg)$/;
    console.log(pic.substring(pic.lastIndexOf('.') + 1))//png
    console.log(pic.substring(pic.lastIndexOf('.')))//.png
    console.log(letter.substring(letter.lastIndexOf('.')+1))//txt
    console.log(letter.substring(letter.lastIndexOf('.')))//.txt

    console.log(reg1.test(letter));//true
    console.log(reg2.test(pic));//false
    // console.log(reg2.test(letter));
    console.log(reg1.test(letter.substring(letter.lastIndexOf('.') + 1).toLowerCase()));//true
    console.log(reg1.test(letter.substring(letter.lastIndexOf('.')).toLowerCase()));//true
    console.log(reg2.test(pic.substring(pic.lastIndexOf('.') + 1).toLowerCase()));//true
    console.log(reg2.test(pic.substring(pic.lastIndexOf('.')).toLowerCase()));//true
// 获取文件后缀名
export const getSuffix = (fileName) => {
  return fileName.substring(fileName.lastIndexOf('.') + 1);
};
//判断文件后缀名
export const FileType = (fileName) => {
  let reg = /docx|pdf|xls|doc|txt/;
  return reg.test(fileName);
};
//判断图片后缀名
export const PictureType = (fileName) => {
  let reg = /(?:png|jpg|jpeg|gif|svg)$/;
  return reg.test(fileName);
};

 9、邮箱

 const reg1 =/^([a-zA-Z0-9]+[-_\.]?)+@[a-zA-Z0-9]+\.[a-z]+$/

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值