请问 perl $str /Learning Perl/; print $&;$str /Learning Perl/;print $&;

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/28 07:15:03
请问 perl $str /Learning Perl/; print $&;$str /Learning Perl/;print $&;
xRKKQ+g!HZk6RA0VNLk45AGRC|F3ܙY:wnXAA;~|sj!m\= PPD`Nd\ ϓWq^pNJgFjSTά%]6[ f<<6.^%X׏$ x D{v*d)j DGdWfV%E8,Y;7e%ugmrRӃ>3J7S69kY)2#'c®`b^O藫E%~FZЬeG8&%/{ on?}q,z-P&ӍSq\4}Liـ :[1#8Yprg`2~%#d

请问 perl $str /Learning Perl/; print $&;$str /Learning Perl/;print $&;
请问 perl $str /Learning Perl/; print $&;
$str /Learning Perl/;
print $&;

请问 perl $str /Learning Perl/; print $&;$str /Learning Perl/;print $&;
$& 是 与上个格式匹配的字符串;
如果 $str 成功 被 /Learning Perl/ 匹配,那么 $& 就存成 $str 被成功匹配到的那部分 .
这个应该在 $str 存在 多处匹配的时候 有用,并且 正则中是用的转义字符,而不是 实际 字符串.例如 /Learning\s+Perl/ \s+ 是匹配 1个或多个 空白字符
my $str = 'I Learning Perl verymuch';
$str /Learning Perl/;
print $&;
最后 输出的是 Learning Perl ,而不是 I Learning Perl verymuch
当然前提 是 /Learning Perl/ 是 你 使用 $& 时 的 上一个 成功 格式 匹配的 正则.