perl-锚位
默认情况下,模式匹配的过程开始于待匹配的字符串的开头,如果不相符就一直往字符串后面浮动。但是加入一些锚位,就可以让模式直接匹配字符串的某处。
1)脱字符(^)
用来标示字符串的开头
2)美元符号($)
用来标示字符串的结尾
3)单词锚位
\b是单词边界锚位,它匹配任何单词的首尾
因此/\bFred\b/课匹配Ferd,但无法匹配frederick alfred。
4)绑定操作符 =~
默认情况下模式匹配的对象是$_,绑定操作符 =~ 则能让Perl拿右边的模式来匹配左边的字符串,而非匹配$_,
my $some_other = " I dream of betty rubble.";
if ($some_other =~ /\bru\b/){
print "Aye, there's the ru.\n"
}
=~绑定操作符是针对左边的字符串来匹配,若没有绑定操作符,绑定操作符会使用默认的$_来匹配。
5)模式串中的内插
正则表达式里可以进行双引号形式的内插,但是在模式匹配中也可以内插:
[code = "perl"]
my $what = "larry";
while (<>){
if (/^($what)/){
print "We saw $what in beginning of $_;
}
}
6)捕获变量
捕获功能指的是:把(圆括号中模式所匹配的)部分字符串暂时记下来的能力。
因为捕获变量存储的都是字符串,所以他们都是标量变量。在Perl中,他们的名字类似 $1、$2、$3....
[ code = "perl"]
$_ = "Hello there, neighbor";
if (/\s(w+),/){
print "The word was $1\n";
}
The word was there
分享到:
相关推荐
该项目是一款基于freeRTOS操作系统和STM32F103x微控制器的手机远程控制浴室温度系统设计源码,共包含1087个文件,包括580个C语言源文件、269个头文件、45个汇编源文件、36个数据文件、36个目标文件、35个编译规则文件、28个包含文件、27个文本文件、6个源文件、3个归档文件。此系统通过手机远程实现对浴室温度的有效控制,适用于智能浴室环境管理。
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。