[问题] 请教REs 的m/ 与/ (开头有无m)差异

楼主: donkeychen (Bad_To_The_Bone)   2013-07-11 00:43:21
请教一下大家
对perl不是太熟
请教一下
if ($a =~ m/(aaa)|(bbb)|(ccc)/ ){
}

if ($a =~ /(aaa)|(bbb)|(ccc)/ ) {
}
两个差异在于 /REs/
前面有无m
我查网络
叙述是 "把边界字符取代成其他字符"
不是太清楚这句话的意思
不太知道怎么爬这个字的文~_~;
如有重复发问烦请不吝告知
谢谢
:wq
作者: scwg ( )   2013-07-11 04:02:00
两者是一样的, 只是用 m 时可以写成 m!(aaa)|(bbb)|(ccc)!当 regular expression 里有 / 的时候比较方便See "Quote and Quote-like Operators" in perlop
楼主: donkeychen (Bad_To_The_Bone)   2013-07-12 09:18:00
感谢 所以是用 m! ! 取代 / / 也等于m/ /
作者: scwg ( )   2013-07-12 09:25:00
是的, 事实上不只是 !, 几乎任何字符都可以 m* *; m# #; 甚至括号 m{ }, etc, 更多细节请 man perlop
作者: herculus6502 (金麟岂是池中物)   2013-07-13 15:50:00
水哦,虽然我已很习惯用backslash去escape...

Links booklink

Contact Us: admin [ a t ] ucptt.com