如何将一个串的每个单词首字母大写

ZDNet软件频道 时间:2004-02-02 作者:ZDNet China |  我要评论()
本文关键词:perl
Perl有个函数可以将一个串的第一个字母大写,这个函数就是ucfirst(),uc()函数并可以把一个串中的每个单词首字母大写。为了将一个串的每个单词首写字母大写,可以以简单的形式联合ucfirst()和lc()函数。
本文译自Builder.com,未经许可请勿转载

perl有个函数可以将一个串的第一个字母大写,这个函数就是ucfirst(),uc()函数并可以把一个串中的每个单词首字母大写。为了将一个串的每个单词首写字母大写,可以以简单的形式联合ucfirst()和lc()函数。比如:

sub UCFirstWords
{
     my ($string) = @_;
 
     $string =~ s/(w+)/ucfirst(lc())/ge;
     return $string;
}

这个程序使用单个已通过的参数并申请匹配单词的正则表达式。在默认的状态下,perl匹配形式是贪心法:它将匹配所有能匹配的文字并将整个单词放到变量中。通过使用lc()函数呈现整个单词的小写字母替换表达式部分然后,使用ucfirst()大写第一个字母。

在代入操作中使用g和e改造者同样很重要。G改造者告诉代入操作匹配操作数全局或者通过串移动并且匹配尽可能多的次数。E改造者告诉代入操作数对待替代串为可执行的perl代码。没有e改造者,文字文本"ucfirst(lc(xxx))"将被包含在输出中——'xxx'用任何匹配的文字替代。



责任编辑:李宁

欢迎评论投稿

百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134