Perl 教程 之 Perl 正则表达式 1

简介: Perl教程介绍了其强大的正则表达式功能,用于字符串匹配、替换和转化。匹配操作符`m//`(可简写为`//`)与`=~`结合,检测字符串是否包含特定模式。如示例代码所示,检查$bar变量是否包含"run",并打印匹配结果。

Perl 教程 之 Perl 正则表达式 1

Perl 正则表达式

正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。

Perl语言的正则表达式功能非常强大,基本上是常用语言中最强大的,很多语言设计正则式支持的时候都参考Perl的正则表达式。

Perl的正则表达式的三种形式,分别是匹配,替换和转化:

匹配:m//(还可以简写为//,略去m)

替换:s///

转化:tr///

这三种形式一般都和 =~ 或 !~ 搭配使用, =~ 表示相匹配,!~ 表示不匹配。

匹配操作符

匹配操作符 m// 用于匹配一个字符串语句或者一个正则表达式,例如,要匹配 标量 $bar 中的 "run",代码如下所示:

实例

!/usr/bin/perl

$bar = "I am baidu site. welcome to baidu site.";
if ($bar =~ /run/){
print "第一次匹配\n";
}else{
print "第一次不匹配\n";
}

$bar = "run";
if ($bar =~ /run/){
print "第二次匹配\n";
}else{
print "第二次不匹配\n";
}
执行以上程序,输出结果为:

第一次匹配
第二次匹配

目录
相关文章
|
6月前
|
Perl
|
6月前
|
Perl
Perl 教程 之 Perl 正则表达式 7
Perl教程讲解了其强大的正则表达式功能,用于字符串匹配、查找、替换和提取。示例展示如何使用`/s`删除变量`$string`中的重复字符,输出结果为原字符串。其他实例包括将非数字字符替换为空格,删除tab和空格,以及将数字间字符替换为单个空格。
47 3
|
6月前
|
Perl
Perl 教程 之 Perl 正则表达式 6
**Perl正则表达式强大多能,常用于字符串匹配、替换和提取。转化操作符如`tr`用于字符转换,如将所有小写字母转大写:`$string =~ tr/a-z/A-Z/`。**
48 2
|
6月前
|
Perl
Perl 教程 之 Perl 正则表达式 5
Perl正则表达式教程第五节介绍替换操作修饰符:i-不区分大小写,m-^和$匹配每行,o-表达式只执行一次,s-."包含换行符,x-忽略空格,g-替换所有匹配项,e-将替换字符串当作表达式执行。Perl的正则功能极强,影响了多种语言的设计。
37 1
|
6月前
|
存储 Perl
Perl 教程 之 Perl 正则表达式 3
Perl正则表达式教程展示了其在字符串匹配上的强大力量。匹配后的值存储在特殊变量$`(前部分字符串)、$&(匹配字符串)和$'(剩余字符串)中。以下示例演示了如何使用这些变量打印原始字符串"welcome to baidu site."匹配"run"后的结果:匹配前是"welcome to ", 匹配的是"bai", 匹配后是"idu site."。
28 1
|
6月前
|
Perl
Perl 教程 之 Perl 正则表达式 2
**Perl正则表达式:**功能强大,常用于字符串匹配、替换和提取。修饰符如`i`(不区分大小写)、`m`(多行模式)、`o`(一次性编译)、`s`(点号匹配换行符)、`x`(忽略空白)和`g`(全局匹配)。`cg`结合全局匹配,允许失败后继续查找。其他语言常参考Perl的正则实现。
28 1
|
6月前
|
Perl
Perl 教程 之 Perl 正则表达式 4
简洁概括:Perl正则表达式强大,s///操作符用于字符串替换,例子展示替换"google"为"baidu"。
39 1
|
6月前
|
Perl
Perl 教程 之 Perl 正则表达式 1
Perl教程介绍了其强大的正则表达式功能,用于字符串匹配、替换和转化。匹配用m//(可简写为//),替换用s///,转化用tr///,常与=~或!~配合判断匹配与否。示例展示了m//在匹配字符串中的应用。
34 0
|
6月前
|
Perl
|
6月前
|
Perl