1?电话号码
let r1 = /^1[3-9]\d{9}$/g
console.log(r1.exec(18596932371))
2?qq号
let r2 = /^[1-9][0-9]{4,9}$/g
console.log(r2.exec(123456))
3?十六进制的方式表示颜色
let r3 = /^#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$/g // # 可能可有可无,如果不需要#,可以在#后面加个 ?
// let r4 = /^#?([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$/g
console.log(r3.exec('#000'))
4?邮箱 (要求只允许qq 、163、gmail这三种邮箱地址)
let r5 = /^[\w-]+(\.[\w-]+)*@(qq|163|gmail)(\.[\w-]+)+$/g
console.log(r5.exec('123456789@qq.com'))
5?url地址 ?(有不同的协议:http、https、ftp、file...)
// 也需要将// 通过转义字符转义
let r6 = /^((https?|ftp|file):\/\/)?([\da-z\.\-]+)\.([a-z\.]{2-6})([\/\w\.\-]*)*\/?$/g
console.log(r6.exec('https://www.bilibili.com/danlaoshi/666/'))
6?匹配HTML标签
let r7 = /^<([a-z]+)([^>]+)*(>(.*)<\/\1>|\s+\/>)$/g // \数字表示引用前面小括号包裹起来的组
7?匹配ip地址(IPV4)
// 255.255.255.255
// 192.1.14.116
// 5.13.123.2
let r8 = /^(([01]?[0-9][0-9]?|2[0-4][0-9]|25[0-5])\.){3}([01]?[0-9][0-9]?|2[0-4][0-9]|25[0-5])$/g
8?匹配日期(年-月-日)
let r9 = /^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|12[0-9]|3[01])$/g
9?匹配各个省直辖市的车牌
let r10 = /^[京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼渝川蜀黔贵滇云藏陕秦甘陇青宁新A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/g
10?匹配18位的身份证
let r11 = /^[1-9][0-9]{5}(18|19|([23][0-9]))[0-9]{2}(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])[0-9]{3}[0-9Xx]$/g