[問題] 同一行上字串的處理

看板Perl作者 (奧斯丁)時間16年前 (2008/12/28 11:03), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/3 (看更多)
不好意思,想請問一下同一行字串的處理 現在有一組字串如下 $test=aa#apple;inquire;keep/bb#about;abc;grammar;new;englsih; 想將它改成為 aa@1apple@2inquire@3keep/bb@1about@2abc@3grammar@4new@5englsih 我的寫法為先將#號都改成@1,但是";"這部份就有困難了,我用reg方 式去判斷結果是一直累加下去,變成如下 aa@1apple@2inquire@3keep/bb@1about@4abc@5grammar@6new@7englsih $ECounter = 2; if (/#/) { s/#/@.1/ge; if (/\@1/) { $ECounter = 2; s/;/@.$ECounter++/ge; print ; } } 這樣看起來,好像它會並不會去判斷後面的東西,而是直接replace,有方法 可以利用reg且還可以在同一行進行判斷嗎?謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.68.26.44
文章代碼(AID): #19LkoUdr (Perl)
文章代碼(AID): #19LkoUdr (Perl)