正则表达式 :用于定义一些字符串的规则,计算机可以根据正则表达式,来检查一个字符串是否符合规则
//获取将字符串中符合规则的内容提取出来
//创建正则表达式的对象
//语法: var 变量 =new RagExp("正则表达式","匹配模式")
// 使用typeof检查正则对象。 会返回objeat
var a = new RegExp("a", "i");
// var a = new RegExp("abc", "i");这个正则表达式可以来检查一个字符串中是有含有a,
//在构造函数中可以传递一个匹配模式是作为第二个参数 i:忽略大小写,g:全局匹配模式
//正则表达式的方法: test(),使用这个方法可以用来检查一个字符串是否符合正则表达式的规则,如果符合则返回true,否则返回false
var b = "AC"
var obj = a.test(b)
console.log(obj)
//使用字面量来创建正则表达式
// 语法:var 变量 =/正则表达式/匹配模式
var b = /a/i
var c = "oia"
var d = b.test(c)
console.log(d)
//创建一个正则表达式,检查一个字符串是否有a或b :使用 | 表示或者的意思
var er = /a|b|c/i
var ew = "Acew"
console.log(er.test(ew))
//创建一个正则表达式检查一个字符串中是否含有字母
//[]里的内容也是或的关系
//[ab] ==a|b
//[a-z] 任意小写字母
//[A-Z]任意大写字母
//[A-z]任意字母
//[0-9]任意数字
var reg = /[a-z]/
var des = "A"
console.log(reg.test(des))
//检查一个字符串中是否含有 abc或adc或aec
var reg = /abc|AEC|AWE/i
var desS = "ABCdefg"
console.log(reg.test(desS))
//[^]除了字符串里有的返回ture
var regqw = /[^abc]/
var desSw = "abc"
console.log(regqw.test(desSw))
//创建一个正则表达式,用来检查一个字符串是否是一个合法的手机号
// 1. 以1开头
// 2. 第二位3 - 9 任意数字
// 3. 三位以后任意数字9个
let phone = /^1{1}[3-9][0-9]{9}$/
let ipt = document.querySelector("input")
ipt.onchange = function() {
if (phone.test(ipt.value) == true) {
alert("合法的手机号")
} else {
alert("不合法手机号")
}
}