麻烦看一下这个,关于在perl中\l的用法.,求助各位大佬!

代码如下:
/\d{2}([\W])\d{2}\l\d{2}/ 匹配
12-05-92
26.11.87
07 04 92
但是/(\d{2})([\W])\l\2\l/ 只匹配形如 17-17-17
我的问题是 \l在此类代码中的作用是什么,还有希望能解释下此句中/(\d{2})([\W])\l\2\l/ 每个\l作用于哪个变量,以及为什么只匹配17-17-17

www说
浏览 259回答 2
2回答

MYYA

请注意,那个是 \1 不是 \l/(\d{2})([\W])\1\2\1/ 中的 \1被指定为(\d{2})所匹配的值,因此这个正则只能匹配如下字串17-17-17 或者17.17.17 或者 17%17%17。又或者 18-18-18 20.20.20这样的串这样明白了么?那个perl教程里这句话没有写得特别清楚,如果多举几个例子读者就会看得更明白一些。

慕的地6264312

While the :: symbol can be thought of as similar to the period in a C struct, it is much more akin to the :: class scope operator in C++: a.b.c; /* something in C */ a::b::c(); // function in C++ $a::b::c; # a scalar in Perl 5 @a::b::c; # a list in Perl 5 %a::b::c; # an associative array or "hash" in Perl 5 &a::b::c; # a function in Perl 5 “::”符号可以认为是与C语言中的“.”相似,而它更像C++中的::类范围操作符。$m = 5;sub me{}$main::m&main::me...
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python