正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。
Perl语言的正则表达式功能非常强大,基本上是常用语言中最强大的,很多语言设计正则式支持的时候都参考Perl的正则表达式。
Perl的正则表达式的三种形式,分别是匹配,替换和转化:
匹配:m//(还可以简写为//,略去m)
替换:s///
转化:tr///
这三种形式一般都和 =~ 或 !~ 搭配使用, =~ 表示相匹配,!~ 表示不匹配。
模式匹配有一些常用的修饰符:
i 忽略模式中的大小写
g 全局匹配
. 匹配除换行符以外的所有字符
* 匹配 0 次或多次 x 字符串,但匹配可能的最少次数
? 匹配 0 次或一次 x 字符串
.* 匹配 0 次或多次的任何字符
[] 匹配符合 [] 内的字符
[^] 匹配不符合 [] 内的字符
^ 匹配字符开头的字符
$ 匹配字符结尾的字符
\d 匹配一个数字的字符,和 [0-9] 语法一样
\D 匹配一个非数字的字符
\w 匹配英文字母或数字
\W 匹配非英文字母或数字
\s 空格,和[\n\t\r\f]语法一样
\S 非空格
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!