有关perl正则表达式的一些杂项
2013-02-05 13:50
477 查看
$也能匹配\n
见Perl语言入门,page 132, 注释6
1 /^.*$/能匹配"\n"么?能!因为$不仅能匹配行尾,也能匹配\n
2 /^.*$/能匹配"b\n"么?能!.能b匹配. \n匹配$
3 /^.*$/能匹配"\nb"么?不能!为什么?因为默认情况下,.不能匹配\n,把模式改一下变成/^.*$/s就可以了,/s表示.能匹配任意字符,包括\n
多行匹配/m
看一个例子,这段代码输出:hello
复制代码 代码如下:my $text = "hello, world,\nhello zdd,\nhello autumn";
while ( $text =~ /^hello/g ) {
print "hello\n"
}
稍微改变一下,加上/m选项
复制代码 代码如下:my $text = "hello, world,\nhello zdd,\nhello autumn";
while ( $text =~ /^hello/mg ) {
print "hello\n"
}
现在输出变成了
hello
hello
hello
注解:
默认情况下,^和$匹配整个字符串的开头和结尾,但是加上/m之后,^和$就匹配每行的开头和结尾。也就是说,因为字符串中有换行符\n,所以/m选项使得^$匹配每行的开头和结尾。
如果字符串中没有换行符,那么/m选项是不起作用的。
您可能感兴趣的文章:
相关文章推荐
- Perl 正则表达式中的一些常用模式
- 有关正则表达式的一些总结
- 一些日文处理的正则表达式(Perl)
- 有关一些正则表达式的元字符
- 有关正则表达式的一些用法总结
- 正则表达式需要灵活理解——Perl学习中
- 一些常用的正则表达式
- 最全的常用正则表达式大全——包括校验数字、字符、一些特殊的需求等等
- 用正则表达式过滤脚本的一些研究(asp.net+C#)
- java 正则表达式的一些符号
- Perl中的正则表达式
- 一些常用的正则表达式(JS)
- 最全的常用正则表达式大全——包括校验数字、字符、一些特殊的需求等等
- perl 正则表达式使用技巧
- 正则表达式的一些用法
- js 中的一些常见的正则表达式
- UE中使用正则表达式的一些技巧
- 正则表达式常见的一些符号含义
- 一些常用正则表达式
- (转载)常用正则表达式大全——包括校验数字、字符、一些特殊的需求