[转载]perl 将一行换成二行

原文地址http://www.linuxsir.org/bbs/showthread.php?t=28639

我在Windows下一 直使用某个出简不出繁的码表,到了UbuntuEdgy中想把它转换成Fcitx的码表 ,但是由于它的码表文件并不是一行只对应一个字或词,比如其中一行是这样的:“ntpg 必定 改写”,也就是说ntpg对应“必定”和“改写”两个词。而这样的格式是不符合Fcitx码表文本的,如果转换Fcitx就不能用。

请问有没有简单的办法将上面的“ntpg 必定 改写”转换成“ntpg 必定 (换行)ntpg 改写”呢?谢谢。(前面有人出了一个用来改SCIM码表的perl程序,然而我试了后发现不行)

cp file file.backup
perl -pi -e ‘s/^(\S+)\s+(\S+)\s+(\S+)/$1 $2\n$1 $3/g’ file

没有测试

此条目发表在Program, 转载分类目录。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>