加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式

发布时间:2020-12-13 23:07:20 所属栏目:百科 来源:网络整理
导读:首先介绍一个练习工具:http://tool.chinaz.com/regex/ 在线验证工具。 正则表达式到底是什么东西? 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文

首先介绍一个练习工具:http://tool.chinaz.com/regex/

在线验证工具。

正则表达式到底是什么东西?
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。
常用元字符

代码 说明
. 匹配除换行符以外的任意字符
w 匹配字母或数字或下划线或汉字
s 匹配任意的空白符
d 匹配数字
b 匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结束


常用限定符

代码/语法 * 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
重复n到m次


常用反义词

W 匹配任意不是字母,数字,下划线,汉字的字符
S 匹配任意不是空白符的字符
D 匹配任意非数字的字符
B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符

正则表达式里面的模式问题

【1】贪婪模式

比如说d{1,4}可以匹配1个到4个字符,在贪婪模式下面引擎尽可能匹配多的字符

比如上面的式子匹配123456这个字符串,他会匹配到1234这个字符串。

【2】非贪婪模式
非贪婪从字面上讲和前面的相反,第一次找到符合条件的即认为已经找到目标串。

还是上面的例子,123456 非贪婪只会一个个匹配。即结果是1,2,·····

【3】模式切换

引擎默认是贪婪模式,要想转换为非贪婪,只要在范围选择的表达式后面加一个即可。

比如上面你的式子,d{1,4}?就完成了模式转换。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读