// 表达式 .* 就是单个字符匹配任意次,即贪心匹配。 // 表达式 .*? 是满足条件的状况只匹配一次,即最小匹配.// 必定逆序环视 (?<=expresion) 子表达式可能匹配左侧文本// 否定逆序环视 (?<!expresion) 子表达式不能匹配左侧文本// 必定程序环视 (?=expresion) 子表达式可能匹配右侧文本// 否定程序环视 (?!expresion) 字表达式不能匹配右侧文本// 联合上述 (?=.*expresion) 必须匹配左侧表达式// . 匹配除换行符以外的任意字符// \w 匹配字母或数字或下划线// \s 匹配任意的空白符// \d 匹配数字// \b 匹配单词的开始或完结// ^ 匹配字符串的开始// $ 匹配字符串的完结// * 反复零次或更屡次// + 反复一次或更屡次// ? 反复零次或一次// {n} 反复n次// {n,} 反复n次或更屡次// {n,m} 反复n到m次// \W 匹配任意不是字母,数字,下划线,汉字的字符// \S 匹配任意不是空白符的字符// \D 匹配任意非数字的字符// \B 匹配不是单词结尾或完结的地位// [^x] 匹配除了x以外的任意字符// [^aeiou] 匹配除了aeiou这几个字母以外的任意字符// /g 示意该表达式将用来在输出字符串中查找所有可能的匹配,返回的后果能够是多个。如果不加/g最多只会匹配一个// /i 示意匹配的时候不辨别大小写,这个跟其它语言的正则用法雷同// /m 示意多行匹配。什么是多行匹配呢?就是匹配换行符两端的潜在匹配。影响正则中的^$符号// /s 与/m绝对,单行模式匹配。// /e 可执行模式,此为PHP专有参数,例如preg_replace函数。// /x 疏忽空白模式。// 这些修饰符是能够混合应用的。例如 /ig、/ie等。const regExp = { //局部 字母、数字、+*-/_三种中的两种组成 part_letterNumberSymbol: /^(([0-9]+[a-zA-Z]+)|([0-9]+[\/\*\-\+\_]+)|([a-zA-Z]+[0-9]+)|([a-zA-Z]+[\/\*\-\+\_]+)|([\/\*\-\+\_]+[a-zA-Z]+)|([\/\*\-\+\_]+[0-9]+))([a-zA-Z]*[\/\*\-\+\_]*[0-9]*)+$/, //必须 字母、数字 required_letterNumber: /^(?=.*[0-9])(?=.*[a-zA-Z])(.{2,})$/, //只能 字母、数字 can_numberAndletter: /^[A-Za-z0-9]+$/, // 只能 字母、数字、下划线 can_number_letter_Underline: /^[A-Za-z0-9\_]+$/, //只能 字母 can_letter: /^[A-Za-z]+$/, //只能 字母、汉字 can_numberAndcharacters: /^[a-zA-Z\u4e00-\u9fa5]+$/, //只能 汉字、字母、数字 can_letterNumberChinese: /^[A-Za-z0-9\u4e00-\u9fa5]+$/, //只能 汉字、字母、数字、下划线 can_charactersNumbersUnderscores: /^[\w\u4e00-\u9fa5]+$/, //英文结尾,只能英文小写,数字,下划线 startLetter_number_letter_Underline: /^[a-z]+[a-z0-9\_]*$/, // 手机号正则,用处例如:验证手机号 phone: /^1\d{10}$/, // 微信号码 wechat: /^[a-zA-Z]([-_a-zA-Z0-9]{5,20})+$/, // 邮箱正则 email: /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/, // IP地址 ip: /^(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)$/, // 非数字结尾 beginNoNumber: /^\D{1}.*$/, // 经纬度 lonLat: /^[+-]?\d{1,3}(\.\d{1,6})?,[+-]?\d{1,3}(\.\d{1,6})?$/, /* 非法uri*/ urlregex: /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/, // 浮点数 能够带+-符号 floatNumber: /^[-+]?\d+(\.\d+)?$/, //座机号码 landline: /^0[0-9]{2,3}-[0-9]{8}$/, //车牌号 carPlate: /^[\u4e00-\u9fa5]{1}[A-Z]{1}[A-Z_0-9]{5}$/, //支付宝 aliPay: /^[/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*][1\d{10}]$/, //财付通 tenPay: /^[/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*][1\d{10}]$/, //中国身份证 chinaIdCard: /^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/, //特殊字符 specialChar: /[`~!@#\$%\^\&\*\(\)_\+<>\?:"\{\},\.\\\/;'\[\]]/im}