什么是正则表达式?
正则表达式又称为正规表示式、正规表示法、正规表达式、规则表达式,是计算机科学的一个概念。
特点:
1.灵活性、逻辑性和功能性非常的强;
2.可以迅速地用极简单的方式达到字符串的复杂控制;
3.比较晦涩难懂(网友吐槽:如果你不觉得正则表达式很难读写的话,要么你是一个天才,要么,你不是地球人。正则表达式的语法很令人头疼,即使对经常使用它的人来说也是如此。);
用来做什么?
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。
我们可能使用过Windows系统下用于文件查找的通配符:*/?。如果我们想查找某个目录下所有的word文档,搜索“*doc”即可。此处,“*”会被解释成任意的字符串。和通配符类似,正则表达式也是用来进行文本匹配的工具,只不过比起通配符,它能够更精确地描述我们的需求,只不过编写正则表达式的方法更复杂。
基本语法:
一个正则表达式通常被称为一个模式,为用来描述或者匹配一系列匹配某个句法规则的字符串。大部分正则表达式的形式都有如下的结构:
选择
|竖直分隔符代表选择。例如“gray|grey”可以匹配gray或者grey。
数量限定
某个字符后的数量限定符用来限定前面这个字符允许出现的个数。最常见的数量限定符包括“+”、“?”、“*”:
+代表前面的字符必须至少出现一次。
?代表前面的字符最多只可以出现一次。
*代表前面的字符可以不出现,也可以出现一次或者是多次。
匹配
圆括号可以用来定义操作符的范围和优先度。
正则表达式全集:
最好借助一定的正则表达式测试工具,推荐下面这个: