程序员互联网技术窝Golang

十分钟学会正则表达式

2019-04-06  本文已影响9人  菜刚RyuGou

正则表达式用处挺广的,主要用于处理字符串。

正则引擎

想要在计算机语言中使用正则表达式,那么这门计算机语言必须要利用正则引擎去实现相应的正则库。主要的正则引擎分为以下两类:

语言实现

不同的语言对正则的实现不同,暴露出来的方法也不同,但方法的作用其实都是大同小异,这里用PHP语言做例子。

匹配字符串

替换字符串或数组

这俩函数,都可以替换字符串,在字符串替换中,俩函数用法完全一致。

这俩函数,不仅可以替换字符串,还可以替换数组!在替换数组的时候,pre_filter会过滤掉没有匹配到的内容,而pre_replace不会,这就是他俩的唯一区别。

替换数组

正则运算符转义

对一个字符串中的正则表达式的运算符:". \ + * ? [ ] ^ $ ( ) { } = ! < > | : -"进行转义,转义成非正则表达式的运算符,否则正则表达式会认为其为运算符。

正则表达式语法

你可以把正则表达式当做一门简单的语言来看,但是它的语法显然比一般的计算机语言要简单一些。

界定符

指定正则表达式的开始和结束,可以当成是计算机语言中的大括号{}。一般有三种表现方式:

原子

正则表达式中最小的匹配单位,其实就是字符串中的字符。主要分为两大类:

可见原子:

肉眼能够看见的字符。

由于某些字符在正则表达式中属于特殊字符,那么在书写这类特殊字符的时候,应该注意要加上反斜杠\,例如如果匹配^直接写/^/肯定不行,如果加上反斜杠,就可以了。\^

不可见原子:

肉眼看不到的。

元字符

定义原子的筛选方式,队员原子进行归类,简化正则表达式的书写。

量词

表示某一个原子连续出现的数量。

边界控制

模式单元

将模式单元中的括号及其正则表达式当做是一个原子来看待。

修正模式

给正则表达式的匹配过程添加一种匹配模式

书写方式为:

$pattern = '/hello World/U'

$pattern = '/hello World/i'

$pattern = '/hello World/Ui'//可以任意组合

上一篇 下一篇

猜你喜欢

热点阅读