【Perl】——6. 正则表达式

2021-02-07  本文已影响0人  lkj666

2021.2.6
持续更新中。。。


《Perl语言入门》


1. 正则表达式简介

正则表达式(regular expression, regex)是指用某种模式去匹配一类字符串的一个公式,类似其他工具中的查找和替换操作。


2. 正则表达式

2.1 量词

作用:指定匹配的次数

后面加上?就是非贪婪模式,例如??。它会直接找最接近的符合条件的部分。

2.2 模式分组

作用:用()将需要匹配的内容括起来,当成一个整体看待,后续可以进行反向引用(即将括起来的内容重新执行一遍)

2.3 择一匹配

作用:匹配两侧的某一侧

2.4 字符集

作用:常用字符串集合,但只匹配其中的某一个字符

2.5 锚位

作用:定位进行匹配的位置

2.6 常用表达式:


3. 用正则表达式进行匹配

3.1 模式匹配修饰符

作用:在正则表达式末尾追加一些字符,调整模式的匹配行为。

行首和字符串首的理解:对于人来说,换行符起到分割字符的作用,看起来就是多行的。但是对于Perl来说,整堆东西就是一个大的字符串。

3.2 绑定操作符

作用:指定要匹配某个模式的文本,左侧为文本,右侧为模式,Perl中默认匹配$_变量中的内容。

3.3 捕获变量

定义:捕获组会将正则表达式圆括号中匹配到的字符串保存到相应的变量,通常从$1开始。

3.3.1 禁用圆括号的捕获功能

3.3.2 自动捕获变量

3.4 优先级

圆括号 > 量词 > 锚位和字符序列 > 择一 > 原子


4. 用正则表达式处理文本

替换的形式:s///。通常可以省略s,加上s后,可采用不同成对的定界符。
作用:相当于替换功能。

4.1 修饰符

模式匹配中的修饰符都可以用

4.2 常用表达式

4.3 元字符转义

4.4 与正则相关的操作符

  1. split操作符
按照`:`切割标量成数组
my @fields = split /:/, $string;
  1. join函数
用“:”将数组连接成一个标量
my $result = join ":", @pieces;
上一篇 下一篇

猜你喜欢

热点阅读