Perl正则表达式 模式匹配[通俗易懂]

2022-08-25 15:41:56 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

m运算符与匹配

修饰符

含义

i

关闭大小写敏感性

m

将字符串作为多行处理

o

只编译模式一次。用于优化搜索流程

s

嵌入换行符时,将字符串作为单行处理

x

允许在正则表达式中提供注释,并忽略空白字符

g

全局匹配,即查找所有具体值。如果用于数组型上下文语境,则会返回一个列表;如果用于标量型上下文语境,则返回真或假

s运算符与替换

格式:

代码语言:javascript复制
s/old/new/;
s/old/new/i;
s/old/new/g;
s old new g;
s(old)/new/; s[old]{new};
s/old/expression to be evaluated/e;
s/old/new/ige;
s/old/new/x;

替换修饰符

修饰符

含义

e

将替换一侧作为表达式来求值

i

关闭大小写敏感性

m

将字符串作为多行处理

o

只编译模式一次。用于优化搜素流程

s

嵌入换行符时,将字符串作为单行处理

x

允许在正则表达式中提供注释,并忽略空白字符

g

全局匹配。即查找所有具体值

模式绑定运算符

格式

代码语言:javascript复制
Variable = ~ /Expression/
Variable !~ /Expression/
Variable =~ s/old/new/

模式匹配运算符

示例

含义

$name =~ /John/

如果$name含有模式则为真。如果有真,返回1.否则返回空值

$name !~/John/

如果$name 不含有模式,则为真

$name =~s/John/Sam/

将匹配John的第一个值替换为Sam

$name =~s/John/Sam/g

将匹配John的所有具体值替换为Sam

$name =~tr/a-z/A-Z/

将所有小写字符翻译为大写字符

$name =~ /$pal/

在搜索字符串时使用变量

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/142836.html原文链接:https://javaforall.cn

0 人点赞