[問題] 去除bbs變色字碼

看板Perl作者 (寫本快樂日記)時間18年前 (2007/01/14 21:32), 編輯推噓4(403)
留言7則, 3人參與, 最新討論串1/1
(修改版) ============================= #!/usr/perl open IN, "<in.txt"; open OUTPUT, ">output.txt"; #open IN, ">in.txt"; while (<IN>) { s/\033\[(.*?)m/ /g; printf OUTPUT $_; } close IN; close OUTPUT; ============================= 想寫個去除bbs變色字碼的小程式 可是greedy好像無法正常作動 超過二個 [m 的行就會被刪掉 想請問大家,是我程式寫錯 還是有什麼方法成功 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.217.102.25

01/14 23:12, , 1F
把(.*?)改成用[^m]*呢..把出現m的狀況去除~
01/14 23:12, 1F

01/15 00:11, , 2F
還是一樣結果呢
01/15 00:11, 2F

01/15 01:26, , 3F
[前面的ESC(\033)也要去除喔 ^^
01/15 01:26, 3F

01/15 01:28, , 4F
再就是用 print OUTPUT $_; 比較安全和高效吧﹖
01/15 01:28, 4F

01/15 09:17, , 5F
成功了,發現原來是我在搞笑
01/15 09:17, 5F

01/15 09:18, , 6F
如果把文章貼到console,某幾行會不見,改用讀檔就沒事了
01/15 09:18, 6F

01/15 09:19, , 7F
謝謝樓上二位 ^^
01/15 09:19, 7F
※ 編輯: pcjustin 來自: 125.232.5.242 (01/15 09:21)
文章代碼(AID): #15gZ3Ndm (Perl)
文章代碼(AID): #15gZ3Ndm (Perl)