曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 5534|回复: 0
打印 上一主题 下一主题

大小写转换(\U, \L, \E, \u, \l)

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34395
跳转到指定楼层
楼主
发表于 2011-10-3 17:18:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
\U 字符回将其后的所有字符都转换成大写形式,如:
[Perl] 纯文本查看 复制代码
#!/usr/bin/perl


$_ = "welcome to groad.net";

s/(groad.net)/\U$1/;

print "$_\n";

运行输出:
./case.pl
welcome to GROAD.NET

\L 转义字符会将其后的字符都转换为小写,如:
[Perl] 纯文本查看 复制代码
$_ = "WelCome to groad.net";

s/(WelCome)/\L$1/;

print "$_\n";

运行输出:
./case.pl
welcome to groad.net

\E 可以取消大小写转换。先比较下面的例子:
[Perl] 纯文本查看 复制代码
#!/usr/bin/perl

$_ = "welcome to groad";

s/(\w+) to (\w+)/\U$1 to $2/i;

print "$_\n";

运行输出:
./case.pl
WELCOME TO GROAD
在只是简单的使用 /U 的情况下,所有其后的字母都会被转换为大写。下面将“s/(\w+) to (\w+)/\U$1 to $2/i;” 这句话改成 “s/(\w+) to (\w+)/\U$1\E to $2/i;” ,修改后,使用 \E 来在转换的中途就终止这种大小写转换。运行输出:
./case.pl
WELCOME to groad

使用小写形式的 \l\u 时,它们只会影响其后的一个字符,比如:

[Perl] 纯文本查看 复制代码
#!/usr/bin/perl

$_ = "welcome to groad";

s/(welcome)/\u$1/;

print "$_\n";

运行输出:
./case.pl
Welcome to groad

上面的操作符 \U, \L, \E, \l, \u 可以直接用在任何双引号内的字符串,比如在 pint 语句中:print "\Uwelcome\E \LTO\E \uGroad.\lNet\n"; 该剧回打印出:WELCOME to Groad.net
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-5-4 00:15 , Processed in 0.147959 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表