[转 - 改] Perl初级教程 (四)
【字符串匹配】
则表达式-regular expression
规则表达式包含在斜线内,匹配通过=~操作符进行。如果字符串the出现在变量$sentence中,则下面的表达式为真:
$sentence =~ /the/
RE是大小写敏感的,所以如果
$sentence = "The quick brown fox";
那么上面的匹配结果为false。
$TestStr = "Contains a test !" ;
if ($TestStr = ! ~/test/)
{
print("Contain ! ");
}
else
{
print("No contain !");
}
> No contain !
下面是一些特殊的RE字符和它们的意义:
. # Any single character except a newline ^ # The beginning of the line or string $ # The end of the line or string * # Zero or more of the last character + # One or more of the last character ? # Zero or one of the last character
1. $$
perl -e "sleep(5);print qq(The PID of process perl.exe is : $$)"; # 命令行运行, $$是当前perl解析器的进程ID(即,PID).
> The PID of process perl.exe is : 1871
2. $_.
@FruitList = ("Apple ","Pear ","Orange ","Peach ");
foreach(@FruitList)
{
print $_."\n";
}
foreach(@FruitList)
{
print $_."\n";
}
> Apple
Pear
Orange
Peach
在程序第五行中:foreach (@array) 实际上就是等于 foreach $_ (@array),在这里,$_是默认是输入/输出,因此,如果在程序中有类似的没有明确声明的变量位置的时候,就有可能能使用$_代替。
- Make people around you successful is the biggest contribution to ourselves. -