当前的perl表达式是什么意思
我在perl中遇到了这个表达式:当前的perl表达式是什么意思,perl,expression,Perl,Expression,我在perl中遇到了这个表达式: if($temp !~ /^\.\n$/) 我不熟悉perl中的表达式,我想知道它的意思 /PAT/,是m/PAT/的缩写,是匹配运算符。它检查绑定值是否匹配正则表达式模式PAT =~是绑定运算符。它可用于指定match运算符检查是否与正则表达式模式匹配的值,因此$temp=~/PAT/检查$temp是否与模式PAT匹配 EXPR1!~EXPR1与相同!(EXPR1=~EXPR1),所以$temp!~/PAT/检查$temp是否与模式PAT不匹配 有问题的模式
if($temp !~ /^\.\n$/)
我不熟悉perl中的表达式,我想知道它的意思
/PAT/
,是m/PAT/
的缩写,是匹配运算符。它检查绑定值是否匹配正则表达式模式PAT
=~
是绑定运算符。它可用于指定match运算符检查是否与正则表达式模式匹配的值,因此$temp=~/PAT/
检查$temp
是否与模式PAT
匹配
EXPR1!~EXPR1与相同!(EXPR1=~EXPR1)
,所以$temp!~/PAT/
检查$temp
是否与模式PAT
不匹配
有问题的模式检查值是否由除换行符之外的单个字符和一个或两个换行符组成
因此,如果$temp
的值不是由一个字符组成,而是由一个或两个换行符后跟的换行符组成,则表达式为真
比如说,
“a\n”
匹配。如果不输入,则输入的正文
“a\n\n”
匹配(尽管可能是无意中匹配)。如果不输入,则输入的正文
“a”
不匹配。如果输入,则输入的正文
“\n”
不匹配。如果输入,则输入的正文
“\n\n”
不匹配。如果输入,则输入的正文
“ab\n”
不匹配。如果输入,则输入的正文
很高兴知道!但是上面的表达式具体是什么意思呢?如果$temp
的值不是由一个字符组成,而是由一个或两个换行后的换行符组成,则将输入if
的主体。我的坏。。在这种情况下,点与a
匹配。。(但除非给出了s
修饰符,否则它不能匹配换行符…,但您的答案正确地抓住了这种情况)