JS中常用的正则表达式

原文链接:JS正则表达式

正则表达式基础:正则表达式基础

欢迎来到我的个人网站:TanJia

常用的正则表达式:

1.验证是否为有效数字

    可能出现+ -号,也可能不出现 [+-]?
    一位0-9都可以,多位首位不能是0 (\d|([1-9]\d+))
    小数部分可能有可能没有,一旦有后面必须有小数点+数字 (\.\d+)?  

let num = /^[+-]?(\d|([1-9]\d+))(\.\d+)?$/
console.log(num.test("2.1")) /* true */
console.log(num.test(".1")) /* false */

2.验证密码 

    数字 字母 下划线 6-16位

let psd = /^\w{6,16}$/
console.log(psd.test("32873dhsj_@sa")) /* false */
console.log(psd.test("32873dhsj_sa")) /* true */

3.验证真实姓名 

    汉字 /^[\u4E00-\u9FA5]$/
    名字长度 2-10位
    可能有译名 ·汉字 (·[\u4E00-\u9FA5]{2,10}){0,2}
    如:"尼古拉斯·谭一"

let name = /^[\u4E00-\u9FA5]{2,10}(·[\u4E00-\u9FA5]{2,10}){0,2}$/
console.log(name.test("打撒大厦的")) /* true */
console.log(name.test("大多数都是·")) /* false */

4.验证邮箱

     开头 数字字母下划线(1到多位)
    还可以是 -数字字母下划线或者.数字字母下划线,整体0到多次
    @数字和字母
    多域名: .com.cn
    企业邮箱: ztx@tanjia-off-office.com  

let email = /^\w+((-\w+)|(\.\w+))*@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/
console.log(email.test("adsajdh@dsad-dsds.ds-h.ds"))  /* true */

5.身份证号

    一共十八位 
    前六位:省市县 
    中间八位:年月日
    最后四位:
    最后一位 X或者数字
    倒数第二位 偶数女 奇数男
    最后一位可能是X  

let card = /^(\d{6})(\d{4})(\d{2})(\d{2})\d{2}(\d)(\d|X)$/
console.log(card.test("42108218880888423X")) /* true */
console.log(card.exec("42108218880888423X")) /* ["42108218880888423X", "421082", "1888", "08", "88", "3", "X", index: 0, input: "42108218880888423X"] */

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值