大小寫字母轉(zhuǎn)換:
函數(shù) uc
(uppercase) 將所有的小寫字母轉(zhuǎn)成大寫;
函數(shù) lc
(lowercase) 將所有的大寫字母轉(zhuǎn)成小寫;
Perl提供了四個(gè)內(nèi)置的函數(shù)類,從而能夠輕松地改變字符和字的大小寫。函數(shù)uc()會(huì)用大寫返回其所有的參數(shù),而lc()會(huì)用小寫返回其參數(shù)。如果沒有指定參數(shù)的話,uc()和lc()都會(huì)對$_變量進(jìn)行操作。
要改變字的首字母的大小寫,就要使用ucfirst()和lcfirst()。和uc()以及l(fā)c()類似,如果沒有指定參數(shù),ucfirst()和lcfirst()會(huì)對$_變量進(jìn)行操作。
這四個(gè)函數(shù)都不會(huì)改變其參數(shù);它們只是會(huì)返回其參數(shù)的副本,而這個(gè)副本經(jīng)過了改變。所以,你必須將結(jié)果分派給一個(gè)變量或者打印它,或者用其他的方式使用返回的值。像下面這樣做是一個(gè)常見的錯(cuò)誤:
$a = 'hello';uc($a);print $a;
第一眼看上去,你可能會(huì)預(yù)計(jì)這段代碼將打印“HELLO”。但是,由于uc()沒有更改其參數(shù),所以它的結(jié)果只打印了小寫的“hello”。要獲得預(yù)期的結(jié)果,就要使用像下面這樣的代碼:
$a = 'hello';$a = uc($a);print $a;
更改字的大小寫的另一種方式,是對雙引號(hào)里面的字符串使用/L和/U逸出序列。使用下面的代碼你可以獲得與前面相同的結(jié)果:
$a = 'hello';print "/U$a/E";
逸出字符/E會(huì)結(jié)束前面逸出字符(在這里是/U)開始的內(nèi)容。
利用Perl內(nèi)置的大寫和小寫函數(shù),以及雙引號(hào)里的逸出字符/U和/L,改變(字符的)大小寫是很容易的。
單詞首字母大寫
$str =~ s/(/w+)//u$1/
在perl中,我們可以通過uc,lc,/U,/L來修改變量的大小寫。其中uc,/U是將變量中的字母全部轉(zhuǎn)換為大寫,對應(yīng)的lc和 /L是將變量中的字母全部轉(zhuǎn)換為小寫。如果我們只想將變量的首字母大寫或?qū)⒆兞康氖鬃帜感懀覀兛梢允褂胮erl提供給我們的另外兩個(gè)函數(shù) ucfirst和lcfirst來實(shí)現(xiàn),下面我們來看一個(gè)具體的例子:
#! /usr/bin/perluse strict;use warnings;my $little = "hello";print "little:$little/n";my $big = uc($little);print "big:$big";$little = lc($big);print "little:$little/n";$big = "/U$little";print "big:$little";$little = "/l$big";print "little:$little/n";$big = ucfirst($little);print "big:$little/n";$little = lcfirst($big);print "little:$big/n";
上面的這個(gè)程序打印的結(jié)果如下:
hello
HELLO
hello
HELLo
hello
Hello
hello
這篇到這就結(jié)束了,武林站長站小編特為大家整理了好幾篇文章,希望以后大家多多支持武林站長站。
新聞熱點(diǎn)
疑難解答
圖片精選