作者heyk1 (大热天)
看板Perl
标题[请益] 请问 perl 处理行的移动
时间Fri Feb 22 17:06:47 2013
请问各位高手, perl 能否把本行(特定某一行) 移动加到上一行的最後面?
例如:
this is
a book
that is a chair
用 perl 改成 ==>
this is a book
that is a chair
--------------------
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.250.191.40
1F:→ iFEELing:你要移的是换行符号 不是行 02/23 09:55
2F:→ heyk1:能请您只点一下如何修改? thanks. 02/23 16:40
3F:→ gugod:把 \n 换成空白即可。 s/(this is)\n/$1 /; 02/23 17:48
4F:→ heyk1:请问我目前只能寻找到关键字that, 然後再对那行处理 02/24 11:27
5F:→ heyk1:打错..应是寻找关键字 book, 然後把有 book 那行往上一行移 02/24 11:29
6F:→ heyk1:把 a book 附加在 this is 这上一行的最後面 02/24 11:30
7F:→ heyk1:最後两行合并成同一行 02/24 14:52
8F:推 dryman:s/\n(a book)/ \1/m; 这样就行了 02/24 16:01
9F:→ heyk1:不好意思~小弟是菜鸟,能否解释一下 \1/m 的意思? thanks! 02/24 18:39
10F:→ heyk1:今天试了还是没法.因为要读一个档案, 然後跨行搜寻. 02/25 21:20
11F:→ heyk1:但是用 while 处理, 一次只能处里一行, 无法跨行. 02/25 21:21
12F:→ heyk1:请问有没有高手可以帮忙解答一下 Orz... thanks. 02/25 21:21
13F:→ gugod:如果是用 <> 读档的话,可以先做 local $/ = undef; 02/27 06:18
14F:→ gugod:这样就会把整个档案读进一个字串 02/27 06:19