说真的,正则表达式这么多人写过了,其实我是没必要再写的,但是我还是决定写一篇自己看着舒服的正则表达式博文,
我用到哪里会补充到哪里!
1.正则表达式的常用方法
| 方法名 | 描述 | 示例 |
| test() | 用于检查一个字符串是否匹配正则表达式,返回true或false |
var str = "My cat"; var reg = /cat/; var result = reg.test(str); 结果:result为true |
2.正则表达式的常用字符
| 符号 | 描述 |
| /.../ | 代表一个模式(正则表达式)的开始和结束 |
| ^ | 匹配字符串的开始 |
| $ | 匹配字符串的结束 |
| \s (小写) | 任何空白字符 |
| \S (大写) | 任何非空白字符 |
| \d (小写) | 匹配一个数字字符,等价于[0-9] |
| \D (大写) | 除了数字之外的任何字符,等价于[^0-9] |
| \w (小写) | 匹配一个数字、下划线或字母字符,等价于[A-Za-z0-9_] |
| \W (大写) | 匹配任意不是字母,数字,下划线,汉字的字符,等价于[^A-Za-z0-9_] |
| . | 除了换行符之外的任意字符 |
3.正则表达式的重复字符
| 符号 | 描述 |
| {n} | 匹配前一项n次 |
| {n,} | 匹配前一项n次,或多次(匹配次数达到n次后,还有未匹配的字符,则继续匹配) |
| {n,m} | 匹配前一项至少n次,但不能超过m次 |
| * | 匹配前一项0次或多次,等价于{0,} |
| + | 匹配前一项1次或多次,等价于{1,} |
| ? | 匹配前一项0次或1次,也就是说前一项是可选的,等价于{0,1} |
4.正则表达式的括号用法
| 符号 | 描述 |
| () |
为了提取匹配的字符串,表达式中有几个就有几个相应的匹配字符串 (个人理解:用于包裹阶段性的表达式,如: ) |
| [] |
定义匹配的字符串,如[a-zA-Z0-9]表示字符串要匹配英文字符和数字 或者定义匹配的范围,如需匹配1,3,5这三种任意一个出现一次,必须用[1,3,5]包裹,不然会理解为匹配1,3,5这样的字符串 |
| {} | 用来匹配长度,如\s{3}表示匹配三次空格 |
补充:
正则表达式中的或者是一个 |
写正则表达式判断数字,应需要 一位 一位 的考虑出现的可能,不要以数学罗辑考虑(如十几这个数字,有两个数组成,你只需要考虑个位和十位可能出现几的数字,而不是十几十几去匹配这个思想),不然会陷入很可悲的循环
9万+

被折叠的 条评论
为什么被折叠?



