perl qw以空格為分隔符問(wèn)題的解決方法
perl中創(chuàng)建數(shù)組時(shí),可以使用到qw。
但有一個(gè)問(wèn)題,如果要?jiǎng)?chuàng)建有20個(gè)人名組成的數(shù)組,并且每個(gè)人的名字是這種形式的"Join smith" "Harry Potter"也就是每一個(gè)名字既包含姓也包含名。此時(shí),qw就不起作用了。因?yàn)閝w是用空格作為分隔符。
下面提供一些替代的解決方案,供大家參考。
方案一:
用最原始的方案,也就是雙引號(hào),來(lái)進(jìn)行數(shù)組的創(chuàng)建
@names=("Join smith","Harry Potter");
print @names[0];
結(jié)果如下:
F:\>perl\b.pl
Join smith
F:\>
方案二:
我們可以進(jìn)行一下簡(jiǎn)單的變通,qw只能以空格為分隔符,那我們把人名中間的空格用其他的字符進(jìn)行替代。
@names=qw/Join_smith Harry_Potter/;
#然后當(dāng)我們輸出的時(shí)候我們?cè)侔阎虚g的連接符進(jìn)行替換
@names[0]=~s/_/ /g;
print @names[0];
結(jié)果如下;
F:\>perl\b.pl
Join smith
F:\>
方案三:
利用split函數(shù)進(jìn)行創(chuàng)建。
#首先我們定義一個(gè)變量
$names="Join smith,Harry potter",
#這里利用split函數(shù),這里split//兩個(gè)斜線之間就是你要分割的地方,本例中以逗號(hào)為分割界限
my @names=split/,/,$names;
rint @names[0];
結(jié)果如下:
F:\>perl\b.pl
Join smith
F:\>
相關(guān)文章
perl運(yùn)算符使用介紹與簡(jiǎn)單應(yīng)用
本文向大家簡(jiǎn)單介紹一下Perl語(yǔ)法中Perl運(yùn)算符的概念,Perl語(yǔ)言中Perl運(yùn)算符有很多值得學(xué)習(xí)的地方,這里和大家分享一下它的概念和用法2013-03-03perl如何避免腳本在windows中閃一下就關(guān)閉
寫好了perl程序,運(yùn)行后,準(zhǔn)備等待結(jié)果輸出時(shí),結(jié)果雙擊后,看到屏幕閃了一下,然后什么都沒(méi)有了,根本沒(méi)有機(jī)會(huì)然你看到輸出的結(jié)果2013-03-03perl 變量 $/ 的用法解析 上下文為行模式時(shí),$/ 定義以什么來(lái)區(qū)分行
默認(rèn)狀態(tài)下,很顯然都是用\n來(lái)區(qū)分行,\n也被我們稱作為換行符。當(dāng)讀取序列時(shí),按行來(lái)讀取時(shí),就是以換行符為標(biāo)準(zhǔn)2013-03-03- fdupe 是一個(gè)很小的 Perl 腳本,用來(lái)檢索指定目錄并找出其中重復(fù)的文件,該腳本是通過(guò)文件內(nèi)容來(lái)識(shí)別是否重復(fù)文件,而非文件名。fdupe 無(wú)需其他 Perl 腳本支持,運(yùn)行速度非???/div> 2013-03-03
perl腳本學(xué)習(xí)指南--讀書(shū)筆記
最近在實(shí)習(xí),看著公司有些腳本是perl寫,久聞perl處理文本還是很強(qiáng)大的,趁著周末掃了一般這本書(shū)~記錄下了~2014-08-08最新評(píng)論