Re: [請益] 請問 perl 處理行的移動
:
: this is
: a book
: that is a chair
:
: 用 perl 改成 ==>
: this is a book
:
: that is a chair
: --------------------
:
→ gugod:把 \n 換成空白即可。 s/(this is)\n/$1 /; 02/23 17:48
→ heyk1:請問我目前只能尋找到關鍵字that, 然後再對那行處理 02/24 11:27
→ heyk1:打錯..應是尋找關鍵字 book, 然後把有 book 那行往上一行移 02/24 11:29
→ heyk1:把 a book 附加在 this is 這上一行的最後面 02/24 11:30
→ heyk1:最後兩行合併成同一行 02/24 14:52
推 dryman:s/\n(a book)/ \1/m; 這樣就行了 02/24 16:01
→ heyk1:不好意思~小弟是菜鳥,能否解釋一下 \1/m 的意思? thanks! 02/24 18:39
http://perl.hcchien.org/ch08.html 找"$1" 會找到說明 (不是找\1)
用{}內這一串去google可以找到....
{modifier 常規表示法 OR 正規表示式 OR "regular expression"}
http://knowledge.twisc.ntust.edu.tw/doku.php?id=3伺服端安全:3-3安
全程式碼寫作:php:在PHP使用正規表示式 (請手動還原斷行) 找/m 會找到說明
: → heyk1:今天試了還是沒法.因為要讀一個檔案, 然後跨行搜尋. 02/25 21:20
: → heyk1:但是用 while 處理, 一次只能處裡一行, 無法跨行. 02/25 21:21
: → heyk1:請問有沒有高手可以幫忙解答一下 Orz... thanks. 02/25 21:21
根據 http://renylai.blogbus.com/logs/27336279.html
改 $/ ($INPUT_RECORD_SEPARATOR) 可以達成整個檔案的內容一次讀入的效果
或者
open INPUT_FILE, '<', "/path/filename";
my @lines = <INPUT_FILE>;
my $in_one_line = join( "", @lines);
以上的所有函數、變數、正規表示式的modifiers等等
都在perldoc.perl.org有完整英文說明
例如 http://perldoc.perl.org/perlre.html#Modifiers
中文的資源我也建議找Learning Perl這本書來看
不管中英文,熟悉一些術語做網路搜尋或者溝通會比較精準
另外個人覺得發問附上足夠的code比較能提高回答的動機
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.234.218.102
※ 編輯: flu 來自: 36.234.218.102 (02/26 07:33)
推
02/26 17:39, , 1F
02/26 17:39, 1F
討論串 (同標題文章)
Perl 近期熱門文章
PTT數位生活區 即時熱門文章