gpt4 book ai didi

regex - vim:将包含模式的行移动到上一行的末尾

转载 作者:行者123 更新时间:2023-12-01 07:28:05 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to move current line behind the line above it in Vim?

(1 个回答)


7年前关闭。



A : 
A()
A :
A(int)

to

A : A()
A : A(int)

A() 是我正在搜索的模式(多行)并尝试将其附加到前一行。

最佳答案

使用

:norm J

将适用于您当前的输入,但我认为搜索是强制性的,因此您可以使用这样的全局命令
:g/\vA\(.{-}\)/normal kJ

分解
g              -- start global command
\vA\(.{-}\)/ -- search for A followed by (<anything>)
normal kJ -- for each match, execute k (line up), J (join lines)

编辑 (cudo 给彼得)

-j在命令行模式下等效于 kJ在正常情况下,您可以将其缩短为
:g/\vA\(.{-}\)/-j

甚至更短
:g/\vA\(.*\)/-j

但我个人更喜欢懒惰的 ({-}) 而不是贪婪的 (*) 量词。

关于regex - vim:将包含模式的行移动到上一行的末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20487414/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com