1.正则表达式
@ 基本的认知:正则表达式是一种比较特殊的规范格式,必须按照这个种格式该你返回一个true;正则表达式非常强大,可以运用于不同的场景,java,c/c++/c#,VBS ,mysql等多种数据库,在多语言中同样适用,所以学习这个正则表达式非常有必要,一来提高你编写代码的速度,简化逻辑判断等等;
2.基本的用法
# 运用在前端
1.js中,常用的这个表达式有两种:
-- var reg =new RegExp(表达式);
-- var reg =/^表达式$/;在js 中推荐使用;
2.特别注意的是,这个结束符号 $ ,不写的情况下会匹配错误,得不到想要结果;
# 运用在java程序中
1.直接使用方式就是编写成成字符串的方式;
比如:String regex="\\^d{1,15}"; ---------------------------------------表示的是要判定数字类型,长度在[1,15 ]的范围
boolean flag = XXX.matches(regex);---------------------------根据返回的是true or false 进行判定功能是否继续操作;
3.常用的匹配方式
#字符类匹配
-- [abc] 表示 a,b,c 中的任意一个字符。,这些都只能单个字符串
-- [^abc] 表示任意字符,除去a,b,c 单个字符
-- [a-zA-Z] 表示a - z 或者是A -Z 之间的一个字符
-- [0-9] 表示的是数字 0到 9 之间的任意一个数字
#元字符匹配
-- . 匹配除了(\n,\r)之外的任何单个字符。
-- \w 匹配字母、数字、斜划线。等价于 '[A-Za-z0-9]'.
-- \W 匹配非字母、数字、斜划线。等价于 '[^A-Za-z0-9]'
-- \S 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。
-- \d 匹配一个数字字符。等价于 [0-9]。
-- \D 匹配一个非数字字符。等价于 [^0-9]。
-- \b 匹配一个单词边界,也就是指单词和空格间的位置。例如, 'er\b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'。
-- ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。
-- $ 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置。
#数量词:
-- x? ?表示一次,或者一次也没有 比如:reg ="\\d?"; 表示出现的数字有一次或者没一次
-- x{n} 表示的是要出现的次数为n 次 比如:reg ="\\d{5}"; 表示就是5个数字,表示长度
-- x{n,m} 表示的是这个至少是n 次,最多是m 次。比如:reg = "\\d{0,5}"; 表示数字最少0个,最多5个
-- x{n+} 至少n次。 比如:reg = "\\d{5+}"; 至少 5次+;
4.常见的正则表达式
1.QQ :QQ 我们知道,最小位数和最高位数,不能出现字符串等等就行了,所以简单的方式就可以写成:
reg ="\\d{6,13}"; 假设qq位数最小为 6 位,最大13位
2.email :xxxxx@qq.com ,其中的特点就值,@ 和 . 是必须出现的,所以我们的email正则表达式:
reg ="\\^d{5,13}@\w{3}.\w{3}"
3.电话号码:电话号码的话,就有区号之分,比如说:0797 - 123456789;这样方式的,其实跟上面的是一样的,就留大家一起思考了
4 .........
有说错的地方欢迎大家评论, 谢谢查询此信息!!!!!