在我们平时的开发中经常需要匹配一些特定字符串,这时就用到了正则表达式,很多人都是用的时候去百度上搜的,但是如果我们能自己写出需要匹配的正则就会大大增加开发效率,而写出正则的基础是先要记住正则表达式的语法要求,下面我把正则的语法整理出来供大家参考。
一、正则表达式基础
1、字符组
[] 允许匹配一组可能出现的字符,例如[Jj]ava,[Jj]既可匹配大写的J也可匹配小写的j,即可匹配到Java和java
2、区间
一些常见的字符组比较大,需要的时候不能每次都将其写完,比如所有的数字[0123456789],所有的小写字母从a到z,为了更简便的写出这些字符组正则表达式引擎在字符组中使用连接字符(-)代表区间,常用的有以下字符区间:
- 匹配任意数字[0-9]
- 匹配所有小写字母[a-z]
- 匹配所有大写字母[A-Z]
3、匹配特殊字符
正则表达式中[]代表匹配字符组,-代表区间,但是当要匹配的符号就是[]或者-的时候需要对这些符号进行转义,[、-就代表[和-符号本身
4、取反
有时候我们希望根据不会出现的字符定义字符组,此时可以通过在字符组开头使用^字符实现取反操作
5、快捷方式
正则表达式引擎提供了一些更简洁的匹配字符组方式,如
\w 可匹配任意单词,任意单词字符表示[a-z]、[A-Z]、[0-9]、_,w即word
\d 匹配任意数字,d即digit数字的意思
\s 匹配空白字符