看板 Perl 關於我們 聯絡資訊
※ 引述《pat12345 (咖啡杯)》之銘言: : 大家好,我是perl初學者, : 我想把以下的文字做換列的轉換, : 難的地方是帶括號的, : 想請大家給我一些建議, : 感激不盡~~ : input: : A, B, C[1], C[0], D, P[3], P[2], P[1], : output: : A; : B; : [1:0] C; : D; : [3:1] P; 雖然我沒辦法正確回答你的問題, 但既然你說一點建議,加上板上水量不多,就讓我回一篇吧@@ 最大的問題,將中括號裡的數字取出來 無庸置疑要使用正規表示法, $1,$2等變數會儲存前一個模式符合到的部分,但似乎需要先用()把想要的部分框起來 老實說我好想先把輸入的中括號先刪除掉,別的分隔方式簡單的多,因為不用顧慮前後都有 換列很簡單,先將輸入設定為array, 依照輸入的方式設定split函數的分隔符號就好, 然後先$" = "\n"; 再 print "@array"; 希望有幫助,當然如果你的問題只有正規表示法的部分我就很遺憾了xd -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.139.65.124 ※ 文章網址: https://www.ptt.cc/bbs/Perl/M.1555731495.A.00B.html ※ 編輯: enjoytbook (223.139.65.124), 04/20/2019 14:21:46
flu: 灌水不錯啊 :D04/20 14:33
釣出人來了,拜託幫個忙@@所以$1是儲存pattern中的第一個小括號符合的東西嗎? ※ 編輯: enjoytbook (223.139.65.124), 04/20/2019 15:34:20
flu: 對啊 通常都是這樣用 "perl $1 意思" google一下可找到說明 04/20 19:28
flu: 或者 perldoc -v $1 也有說明 04/20 19:29
flu: perlretut 這個文件在初學也滿實用的-- RegExp tutorial 04/20 19:41
enjoytbook: 汗,回去重看才發現 04/23 11:09