例如:@abc = (abc,def,ghi,gkl,mno,abc.qqq,def.qqq,ghi.qqq,gkl.qqq,mno.qqq)我現在想把@abc中所有包含.qqq的提取出來,并給到另一個變量。即得到:@www=(abc.qqq,def.qqq,ghi.qqq,gkl.qqq,mno.qqq)第二種:或者能不能將所有帶.qqq的字符串,去掉.qqq然后給到另一個變量。因為我想比對所有.qqq前面相同的字母。但現在有.qqq所以對比不了.菜雞,求大神指教。
2 回答

郎朗坤
TA貢獻1921條經驗 獲得超9個贊
按照你的要求編寫的perl程序如下(先用正則表達式提取,再用正則表達式替換)
@abc = ( "abc" , "def" , "ghi" , "gkl" , "mno" , "abc.qqq" , "def.qqq" , "ghi.qqq" , "gkl.qqq" , "mno.qqq" ); $size = @abc ; @www =(); for ( $i =0; $i < $size ; $i ++){ $string = $abc [ $i ]; if ( $string =~ m/[A-Za-z]+\.qqq/){ push ( @www ,$&); } } print "@www\n" ; $size = @www ; for ( $i =0; $i < $size ; $i ++){ $www [ $i ]=~ s/\.qqq//i; } print "@www\n" ; |

DIEA
TA貢獻1820條經驗 獲得超2個贊
添加回答
舉報
0/150
提交
取消