VSCodeVim删除所有包含模式的事件

时间:2018-12-26 15:55:32

标签: vim visual-studio-code vscodevim

我想使用VSCodeVim插件从文档中所有单词中删除一些前缀。例如:

public static string SendReceiveCommand(IPEndPoint iPEndPoint)
        {
            try
            {                
                Client = new TcpClient();                
                Client.Connect(iPEndPoint);
                IncomingStream = Client.GetStream();
                //do reading and data processing here
                return IncomingString;
            }
            catch (SocketException e)
            {                
                return Convert.ToString(e.SocketErrorCode);
            catch (Exception e)
            {                
                return e.Message;
            }
            finally
            {
                Client.Close();
            }
        }

删除前缀“ some”并获取:

var someVarOne, someVarTwo, someVarThree;

谢谢!

3 个答案:

答案 0 :(得分:2)

尝试:

%s/some\(Var\w*\)/\1/g
  • \(...\)定义了一个组
  • \w*一个或多个单词字符
  • \1替换为第一组(与Var\w*匹配的所有内容)

答案 1 :(得分:2)

假设您显示的变量是camelCase,并且只知道“ some”一词(即“ Var”可能会更改),请尝试以下正则表达式:

some(([A-Z][a-z]*)+)

并替换为\1

regex demo

适用于

  

var someVarOne,someVarTwo,someVarThree,someOtherVar,someVar,   一些东西;

     

var some;

生产:

  

var VarOne,VarTwo,VarThree,OtherVar,Var,事物;

     

var some;

答案 2 :(得分:1)

由于已经提到了替代方法,因此您可以尝试以下简单方法:

  1. 使用 v 键在视觉上选择要替换的单词(此处为“ some”)。
  2. 在所有出现“ some”一词的地方放置多个光标 Ctrl + Shift + L Cmd + Shift + L < / kbd>键。
  3. 使用 d 键删除视觉选择的部分,该键表示 删除
相关问题