1.$_ = "yabba dabba doo";
if (/abba/){
print "It matched!\n"
}
表达式/abba/会在$_中寻找4个字符组成的串,如果找到就返回真
2.
/fred\t*barney/能够匹配fred 和barney之间有任意多个制表符的串。
/fred\tbarney/能够匹配一个制表符
/fred\t\tbarney/来匹配两个制表符
/fred+/会匹配fedddddd这样的字符串
/(fred)+/会匹配像fredfredfredfred这样的字符串
3.$_ = "abba";
if (/(.)\1/){
print "It matched same character next to itself!\n"
}
(.)\1表明需要匹配连续出现的两个同样的字符
4.$_ = "yabba dabba doo";
if(/y(....) d\1/){
print "It matched the same after y and d!\n";
}
匹配y后面4个连续的非回车字符,并且用\1在d字符之后重复这4个字符。
5.
$_ = "yabba dabba doo";
if (/y(.)(.)\2\1/){
print "It matched the same after y and d!\n";
}
正则表达式,/y(.)(.)\2\1/。\2表示第2个括号"()"里匹配的内容;\1表示第1个括号"()"里匹配的内容。在这里的意思就是匹配“y后面是‘abba’类型“的字符串,如$_="yabba";$_="ycddc";$_="yzxxz123"等都能匹配成功
6.
/fred \w+ barney/会匹配fred、一个空格、一个单词再接一个空格与barney。
7.\s简写擅长处理空白、它相当于[\f\t\n\r],相当于换页、制表、换行、回车、空格。
8
[^\d][^\w][^\s]表示非数字、非词、非空白字符。
9.
#!/usr/bin/perl
$_ = "yabba dabba doo";
if (/y(((.))((.))\5\3) d\1/){
print "It matched!\n";
}
#!/usr/bin/perl
$_ = "yabba dabba doo";
if (/y((.)(.)\3\2) d\1/){
print "It matched!\n";
}
阅读(1071) | 评论(0) | 转发(0) |