如何解决Notepad ++如果行包含则如何替换结尾
我真的需要您的帮助! 这是我目前的情况:
如果一行包含“ Menu :: choose”
Menu::choose("Invisible",invis);
Menu::choose("Never Wanted",neverw);
我需要Notepad ++将结尾“);”替换为“,true);” 所以看起来像这样:
Menu::choose("Godmode",godmode,true);
Menu::choose("No Ragdoll",rag,true);
有办法吗?
解决方法
在“替换”对话框中,您需要输入以下内容:
-
在“查找内容:”框中,您可以输入:
Menu::choose\((.*)\);
-
在“替换为:”框中,您可以输入:
Menu::choose\(\1,true\);
-
然后在底部选中“正则表达式”位
然后,当您单击“全部替换”时,它将匹配与“查找内容:”正则表达式匹配的行,并将其替换为“替换为:”(包括额外的“ true”参数)。
在正则表达式中:
-
字符
(
和)
很特殊,因此需要在带有\(
和\)
的正则表达式中转义 -
(
和)
表示一个捕获组,该捕获组会将内部的任何匹配项分配给\1
-
.*
匹配任意数量的字符。
因此Menu::choose\((.*)\);
将匹配:
-
Menu::choose(
- 任意数量的字符(已分配给
\1
) -
);
然后Menu::choose\(\1,true\);
替换为:
-
Menu::choose(
- 所有分配给
\1
的字符 -
,true);
- Ctrl + H
- 查找内容:
Menu::choose\([^)]+\K
- 替换为:
,true
- 检查 匹配案例
- 检查 环绕
- 检查 正则表达式
- 全部替换
说明:
Menu::choose # literally
\( # open parenthese,have to be escaped as it has special meaning in regex
[^)]+ # negative character class,1 or more NON close parenthesis
\K # forget all we have seen until this position
屏幕截图(之前):
屏幕截图(之后):
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。