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

正则表达式(一)

发布时间:2020-12-13 21:57:14 所属栏目:百科 来源:网络整理
导读:最近看一本《精通正则表达式》,感觉非常有意思就总结一下里面的基础部分。 正则表达式: 个人理解就是用来匹配字符的一种语言,类似于网上一个一个笑话“一个人学打麻将,都说看多了就会了,怎样让一个人迅速学会打麻将,最简单的办法就是把胡牌的公式写出

最近看一本《精通正则表达式》,感觉非常有意思就总结一下里面的基础部分。

正则表达式:

个人理解就是用来匹配字符的一种语言,类似于网上一个一个笑话“一个人学打麻将,都说看多了就会了,怎样让一个人迅速学会打麻将,最简单的办法就是把胡牌的公式写出来,遇到类似这个公式的牌,你就赢了”。这个表达式也是类似,使用一些类似公式的东西来找出你想要的文本字符串等。

基本术语

  • 正则:全名是正则表达式(regular expression),简称正则(regex)
  • 匹配:一个正则匹配一个字符串,其实指的是这个正则表达式能在字符串中找到匹配的文本
  • 元字符:一个字符是否属于元字符取决于具体的实际情况,比如.表示匹配所有的字符,但是.就表示匹配.本身
  • 流派:不同的元字符在不同的流派中是有差别的,需要具体情况具体对待
  • 子表达式:一般指的是正则的一部分,例如括号内的表达式或用|分隔开的分支

快速入门专用通道

eg1:我们经常在电脑资源管理器中查找某一个txt文件的时候,经常在搜索窗口用*.txt文件来表示所有的txt文件。这里的*表示的是所有的意思,在正则中用.来表示所有的东西,俗称通配符
eg2:查找单词grey,但是记不清楚到底是grey还是gray了,这时候可以用这个来表示gr(e|a)y,这个式子就是一个正则表达式用来表示选择其中的一个就行,这时候往往能找到你想要的答案。

常用元字符

元字符 名称 匹配对象
. 点号 匹配任意单个字符
[···] 字符组 匹配单个列出的字符
[^···] 排除型字符组 匹配单个未列出的字符
问号 允许匹配一次,但非必须
* 星号 匹配任意多次,可以不匹配
+ 加号 至少匹配一次,没有上限
{min,max} 区间量词 至少需要min次,至多max次的上一个字符可以匹配
^ 脱字符 匹配一行开始的位置
$ 美元符 匹配一行结束的位置
&; 单词分界符 匹配单词开始的位置,相当于单词里面的^
> 单词分界符 匹配单词结束的位置,相当于单词里面的$
| 分隔符 匹配任意分隔的表达式
(···) 括号 限定多选结构范围,为反向引用“捕获”文本
1,2,… 反向引用 匹配之前的第一、第二组括号内的字表达式匹配的文本

思考题

如何用正则表达式来表示简单的一个网址URL,答案在下篇博客揭晓,欢迎大家留言,给出您的答案!

(编辑:李大同)

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

    推荐文章
      热点阅读