2015-09-02 190 views
0

后,我有文字的这样一列:粘贴列

usa 
canada 
alaska 

,第二栏:

,seattle 
,toronto 
,anchorage 

我想接下来添加第二列到第一这样

usa,seattle 
canada,toronto 
alaska,anchorage 

我试过列模式,但不同的长度使一团糟。

+0

有一种方法可以做到这一点在vim: http://stackoverflow.com/questions/20050070/in-vim-how-do-i-paste-a-column-of-text-to-the-end-of-irregular-length-lines – Atri

回答

0

我不觉得你有足够的数据结构来解释这个更好,但你不能只是“找到所有”逗号来突出所有的逗号,按ctrl + shift +右键,直到你突出显示第二列值,然后按Ctrl +左键,直到光标位于第一列值的末尾并粘贴它们?

如果你想自动执行它,这就是为什么你问一个正则表达式,那么你可以只使用查找和这样的替换:

 Find: ([a-zA-Z]*)([\t\ ]*)(\,([a-zA-z])*) 
    Repl: $1$3 

用途是发现,任何数量的资金,或更低字母 为$ 1,随后是任意数量的选项卡,或者空格为$ 2, ,然后逗号后跟任意数量的上限或下限 个案字母为$ 3。您删除空格或制表符(更换 与任何其他分隔符或间隔第二捕捉如果 必要

编辑成复制&粘贴随时为您在记事本++使用。 不要忘记,以确保“扩展”在 查找/替换选项打开,这样就可以捕捉任何制表符或空格

的结果应该是:跳过$ 2替换,并返回刚刚ROW1,ROW3

+0

*记得正则表达式是字面的,所以你不想在你的语句或任何东西中有任何空格,否则正则表达式就不会找到,因为它会查找空格,而不是所需的确切正则表达式。 –