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"] */

 

发布了86 篇原创文章 · 获赞 29 · 访问量 13万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览