作者yingwan (yingwan)
看板Perl
标题[问题] 大小写问题
时间Wed Sep 24 00:19:58 2008
大家好
又是一个新手问题,希望大家多多包涵
我的问题是,Perl它会分大小写 (ex: BLUE 不等於 blue)
如果要让他不分大小写怎麽办?
我用的方法很笨,就是列出一堆可能组合,让程式都接受这些组合
if (($a eq "blue") or
($a eq "BLUE") or
($a eq "Blue") or
($a eq "BlUe") or
($a eq "BluE") or
($a eq "BlUE") or
($a eq "BLue") or
($a eq "BLUe") or
($a eq "BLuE") or
($a eq "bluE") or
($a eq "blUe") or
($a eq "blUE") or
($a eq "bLue") or
.
.
.
.
有没有甚麽指令可以快一点啊?我的方法实在很没效率,希望好心人指点我一下
感谢大家
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 149.159.132.73
1F:推 LiloHuang:if($a =~ /blue/i) { ... } 09/24 00:32
2F:推 LiloHuang:一般C里面的作法会转成大写或者转成小写再做一次判断 09/24 00:32
3F:推 LiloHuang:snort里面的判断大小写之pattern engine也是这样弄的:) 09/24 00:33
4F:推 wnick:uc(mac) eq uc(MAC)......也可放变数 09/24 01:10
5F:→ shelling:$a =~ tr/[A-Z]/[a-z]/; if ($a eq "blue") { ... } 09/24 21:14
6F:→ shelling:囧 一楼解法++ 刚才没看到 09/24 21:15
7F:→ gugod:lc($a) eq "blue" 09/27 23:48