name
变量可能包含2个字:template
或TEMPLATE
。比较两个单词(template
和TEMPLATE
)到"模板" string给出TRUE
。例如,代码:
...
@name = split(/_/,$f,2);
print("$name[0]");
if ("$name[0]" == "template"){
print ("\n lowercase \n");
} elsif ("$name[0]" == "TEMPLATE") {
print ("\n UPPERCASE \n");
}
结果:
template
lowercase
TEMPLATE
lowercase
如何区分大小写的字符串?真的很感谢你的帮助。
答案 0 :(得分:4)
在perl中,==
运算符用于进行数值比较,而eq
运算符用于进行字符串比较。
如果$name[0]
包含TEMPLATE
,那么:
($name[0] == "template")
相当于将0
与0
进行比较,因为包含非数字数据的字符串将在数字上下文中与0
合并。
如果您使用警告(use warnings;
位于脚本顶部)运行它,您将看到有关该警告的警告。
如果您想要区分大小写的比较,则可以使用:
($name[0] eq "template")
作为一个副作用,没有必要像以前那样将LHS写为"$name[0]"
。