首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >搜索括号并在gvim中添加\

搜索括号并在gvim中添加\
EN

Stack Overflow用户
提问于 2020-07-31 10:58:09
回答 2查看 144关注 0票数 4

我是维姆的新手。请帮助搜索并将\添加到字符串中。

例如,对于[1][sometest & numbers][7],输出应该是[1]\[sometest & numbers\][7]

我可以用这个改变开括号,[

代码语言:javascript
复制
:%s/\[[a-z]\&\[/\\\[/g

但不能为] (近括号)做这件事。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-31 11:20:51

若要匹配不属于]子字符串的任何[<DIGITS_HERE>][,可以使用

代码语言:javascript
复制
:%s/\v\[(\d+])@!|(\[\d+)@<!]/\\&/g

这里,

  • \v -非常神奇的mode
  • \[(\d+])@!上的竖琴--一个[字符不跟在1+数字后面,然后是]
  • | - or
  • (\[\d+)@<!] --一个] char,没有紧接在[和1+ digits
  • /\\&之前--用\和找到的match
  • /g替换比赛--全球范围内。
票数 2
EN

Stack Overflow用户

发布于 2020-07-31 11:16:57

这里的基本思想是将字符串分成几个部分:

代码语言:javascript
复制
[1][sometest & numbers][7]

可分为:

  1. [1]
  2. [
  3. sometest & numbers
  4. ]
  5. [7]

然后用第1部分+ \[ +第3部分+ \] +第5部分构建字符串。

这可以通过捕获组来完成。看看:h \(。这应该会给你指明正确的方向。玩得开心!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63190579

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档