佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > perl 刪除數(shù)組元素的幾種方法小結(jié)

perl 刪除數(shù)組元素的幾種方法小結(jié)

熱門標(biāo)簽:硅谷的囚徒呼叫中心 語音系統(tǒng) 百度AI接口 Win7旗艦版 電話運(yùn)營中心 呼叫中心市場需求 客戶服務(wù) 企業(yè)做大做強(qiáng)
1. 用grep函數(shù)

函數(shù)名 grep
調(diào)用語法 @foundlist = grep (pattern, @searchlist);
解說 與同名的UNIX查找工具類似,grep函數(shù)在列表中抽取與指定模式匹配的元素,參數(shù)pattern為欲查找的模式,返回值是匹配元素的列表。
例子 @list = ("This", "is", "a", "test");
@foundlist = grep(/^[tT]/, @list);
結(jié)果 @foundlist = ("This", "test");

2. 用map函數(shù)

函數(shù)名 map
調(diào)用語法 @resultlist = map (expr, @list);
解說 此函數(shù)在Perl5中定義,可以把列表中的各個元素作為表達(dá)式expr的操作數(shù)進(jìn)行運(yùn)算,其本身不改變,結(jié)果作為返回值。在表達(dá)式expr中,系統(tǒng)變量$_代表各個元素。
例子
1、@list = (100, 200, 300);
@results = map ($_+1, @list);

2、@results = map (mysub($_), @list);
結(jié)果 1、(101, 201, 301)
2、無

3. 用splice或者delete

函數(shù)名 splice
調(diào)用語法 @retval = splice (@array, slipelements, length, @newlist);

解說:拼接函數(shù)可以向列表(數(shù)組)中間插入元素、刪除子列表或替換子列表。參數(shù)skipelements是拼接前跳過的元素?cái)?shù)目,length是被替換的元素?cái)?shù),newlist是將要拼接進(jìn)來的列表。當(dāng)newlist的長度大于length時,后面的元素自動后移,反之則向前縮進(jìn)。因此,當(dāng)length=0 時,就相當(dāng)于向列表中插入元素,而形如語句
splice (@array, -1, 0, "Hello");

則向數(shù)組末尾添加元素。而當(dāng)newlist為空時就相當(dāng)于刪除子列表,這時,如果length為空,就從第skipelements個元素后全部刪除,而刪除最后一個元素則為:splice (@array, -1);這種情況下,返回值為被刪去的元素列表。

兩者都可以按照index直接刪除array或者h(yuǎn)ash的元素。但是delete刪除元素后, index后面的元素并不會主動往前移動,該元素刪除后,在array還留有一個undef的元素,顯然刪除得不夠干凈。

標(biāo)簽:崇左 喀什 山西 長沙 安康 濟(jì)南 山西 海南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《perl 刪除數(shù)組元素的幾種方法小結(jié)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    石柱| 武义县| 宜良县| 米易县| 多伦县| 神农架林区| 庆元县| 防城港市| 乃东县| 马关县| 通江县| 美姑县| 平武县| 湾仔区| 夏河县| 织金县| 池州市| 高陵县| 平度市| 德江县| 绵阳市| 麦盖提县| 池州市| 广元市| 和田市| 武宁县| 岳阳县| 且末县| 长海县| 民权县| 东乡族自治县| 新民市| 贵溪市| 汝南县| 伊春市| 鱼台县| 宜良县| 商河县| 合水县| 肥东县| 涞源县|