首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Notepad++正则表达式如何替换第三次出现的斜杠&绕过第一和秒?

Notepad++正则表达式如何替换第三次出现的斜杠&绕过第一和秒?
EN

Stack Overflow用户
提问于 2021-03-15 11:03:13
回答 2查看 208关注 0票数 2

我有如下的条件。

ABC//DEG//IJK//LMN//OPQ//rstuvwxyz

BCA//EGD//JKI//MNL//PQO//stuvwxyzr

ACB//DGE//IJK//LNM//OQP//rstuvwxyz

ABC//DEG//IJK//LMN//OPQ//rstuvwxyz

CAB//GDE//KIJ//NLM//QOP//rstuvwxyz

BAC//EDG//JIK//MLN//POQ//rstuvwxyz

我想要这样,

ABC//DEG//IJK\\LMN//OPQ//rstuvwxyz

BCA//EGD//JKI\\MNL//PQO//stuvwxyzr

ACB//DGE//IJK\\LNM//OQP//rstuvwxyz

ABC//DEG//IJK\\LMN//OPQ//rstuvwxyz

CAB//GDE//KIJ\\NLM//QOP//rstuvwxyz

BAC//EDG//JIK\\MLN//POQ//rstuvwxyz

我试过了

找到什么^.+?\K//

替换为:\\\\

但这只会改变斜杠的第一次出现,

我试过这个,

找到什么:^.+\K//

替换为:\\\\

这将取代每一行末尾的最后一个斜线。

我也尝试了{3}带数字的花括号,但没有好处.提前谢谢你的帮助..。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-15 11:06:56

您可以使用

代码语言:javascript
复制
^(?:.*?\K//){3}

\\\\代替。见regex在线演示

详细信息

  • ^ -行的开始
  • (?:.*?\K//){3} -除断行字符之外,出现三个零或多个字符,尽可能少,然后\K (匹配重置操作符)丢弃到目前为止匹配的所有文本,然后//子字符串只保留在匹配值中。

请参阅演示和设置屏幕截图:

票数 2
EN

Stack Overflow用户

发布于 2021-03-15 11:14:02

如果只有大写字符A-Z,如示例数据中所示,则可以使用字符类[A-Z]+

代码语言:javascript
复制
^(?:[A-Z]+//){2}[A-Z]+\K//
  • 字符串的^开始
  • (?:[A-Z]+//){2}重复2次匹配大写字符A和//
  • [A-Z]+\K//匹配1+大写字符A-Z,清除匹配缓冲区和匹配//

Regex演示

在替换中使用\\\\

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

https://stackoverflow.com/questions/66636733

复制
相关文章

相似问题

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