Regex 如何在sublime文本的范围内进行vi搜索和替换

Regex 如何在sublime文本的范围内进行vi搜索和替换,regex,search,vim,replace,sublimetext2,Regex,Search,Vim,Replace,Sublimetext2,我启用了升华文本模式。。但是还缺少一些重要的vim命令。。假设我想这样搜索和替换 :10,25s/searchedText/toReplaceText/gc 因此,我想搜索searchedText,并将其替换为将文本从10行替换为25,并且每次都会得到提示(即是/否) 我该如何使用Sublime文本来实现这一点?每次我点击:它都会给我一个有趣的菜单。。有办法吗 不幸的是,复古模式无法理解范围。我知道的最好的方法是使用增量搜索: 突出显示第10行中第一个出现的searchedText 点击cm

我启用了升华文本模式。。但是还缺少一些重要的vim命令。。假设我想这样搜索和替换

:10,25s/searchedText/toReplaceText/gc 
因此,我想搜索
searchedText
,并将其替换为
将文本从
10
行替换为
25
,并且每次都会得到提示(即是/否)


我该如何使用Sublime文本来实现这一点?每次我点击
它都会给我一个有趣的菜单。。有办法吗

不幸的是,复古模式无法理解范围。我知道的最好的方法是使用增量搜索:

  • 突出显示第10行中第一个出现的
    searchedText
  • 点击cmnd/ctrl D让升华查找下一个事件
  • 如果要忽略下一个事件,请单击cmnd/ctrl K
  • 高亮显示所有事件后,可以立即替换它们,因为升华在您选择的每个事件上都留下了光标
  • 提供了一个类似Vim的命令行,您至少可以在其中执行替换。好吧,这就是我尝试它时走的路。我不知道它实现的Vim命令子集扩展到了什么程度,但我猜它没有原来的那么大,而且,就像Vintage一样,可能与Vintage不同,并且不稳定到足以让一个相对有经验的Vimmer退出

    不管怎样,我只是再次尝试了一下,事实上,你或多或少可以做你正在寻找的那种替代品,这立刻让ST变得更加有用:

    :3,5s/foo/bar/g
    :.,5s/bar/foo/g
    :,5/foo/bar/g
    :,+5/bar/foo/g
    

    不幸的是,它不支持
    /c
    标志。

    如果您非常希望看到vim的运行,请尝试另一种方法;ie在vim中启用崇高的东西

    以下是两个可能会派上用场的链接: 和(这是sublime中一个惊人的特性,而原生vim中缺少)


    希望这能让你有创意;)

    尽管这个问题得到了回答。。我想这会增加一些价值


    一旦您安装了插件,就可以使用IDE实现vi搜索/替换的全部功能。顺便说一下,这个想法非常适合RubyonRails

    名为
    vintageous
    的插件提供了更多功能,包括搜索功能。它在
    包控制中可用

    甚至跳到行也不正常?如果我点击
    ,它又会给我那个奇怪的菜单。。我可以跳转到sublime文本上的行号的唯一方法是通过
    CTRL-G
    对吗?您可以使用:like vi来跳转到一行。该菜单确实接受与vi相同的一些命令,但不太多。这很奇怪。。如果我点击
    我会得到菜单。。但是,如果我输入的行号不是
    0
    $
    (分别用于
    BOF
    EOF
    ),它将不起任何作用。。但是,如果我按ctrl g
    ,我会得到相同的菜单。。它可以带我去任何我想去的地方。。知道为什么会发生这种情况吗(以及我如何纠正)?vintageEx还解决了我在评论中提到的
    问题subvim很棒,强烈推荐它。@MattGreer subvim是否为我提供了所有vim功能?@moyen subvim很久没有得到支持/更新了。我建议您只构建自己的vim设置。如果您使用JavaScript/TypeScript,那么Oni也是一个不错的选择: