我们在处理字符串时, 特别是需要打印的时候, 经常需要对字符串进行大小写转换。或者在比较字符串时, 为了方便可以统一成大写或者小写。
在Perl中, 内置了lc uc lcfirst ucfirst函数, 以及\L \U \l \u 特殊转义字符来实现大小写转换。
具体我们还是通过例子来看
我们有一个字符串:
my $str = 'heLLo easyPerl';
1 把字符串都转成大写:
$str = uc $str;
$str = "\U$str";
这2种方式效果是一样的, 注意\U并不是一个函数, 省略了双引号会报错。
2 同样的, 把字符串都转成小写:
$str = lc $str;
$str = "\L$str";
3 把首字母转成大写/小写:
$str = ucfirst $str;
$str = "\u$str";
$str = lcfirst $str;
$str = "\l$str";
4 把每个单词的首字符转成大写,其他字符转成小写:
我们需要先把单词单独匹配出来, 然后对每个单词来进行转换
$str =~ s/(\w+)/\u\L$1/g;
这样就可以了, 我们注意到 \u和\L是可以叠加使用的。我们可以在需要的时候灵活组合运用, 以此来满足我们的需求。
文章转载自EasyPerl,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




