Regex 在find and replace module won';无法正确访问匹配项
因此,我在vscode中有一个正则表达式,它匹配第一个Regex 在find and replace module won';无法正确访问匹配项,regex,visual-studio-code,Regex,Visual Studio Code,因此,我在vscode中有一个正则表达式,它匹配第一个{space}后面的任何句子,使用(?i)使用以下正则表达式: ^([^:]*:\s)(.*) 并使用以下替换钉: $1"$2" 它似乎能完成任务 使用Javascript似乎效果更好: ([^:]*:\s)(.*) 相同的替换字符串 结果: 我目前也没有安装VSCode,但是在第一个捕获组上可以吗 ^.*?\s(.*$) 如果没有,可以尝试安装VSCode 删除“^”和“$”也可能会影响结果(单行模式和多行模式下的开始、结束行匹
{space}
后面的任何句子,使用(?i)使用以下正则表达式:
^([^:]*:\s)(.*)
并使用以下替换钉:
$1"$2"
它似乎能完成任务
使用Javascript似乎效果更好:
([^:]*:\s)(.*)
相同的替换字符串
结果:
我目前也没有安装VSCode,但是在第一个捕获组上可以吗
^.*?\s(.*$)
如果没有,可以尝试安装VSCode
删除“^”和“$”也可能会影响结果(单行模式和多行模式下的开始、结束行匹配).我的最佳猜测是您应该使用$1
而不是$0
。我感谢您的帮助,但我已经尝试了$1
,但运气不佳。问题似乎不在于替换模块,而在于我如何在查找模块中格式化regex表达式以适应替换模块。实际上,对于此任务,我不会使用任何向前/向后看。我只需将该行与^([^:::*:\s)(.*)
之类的内容进行匹配,然后将其替换为$1“$2”
…使用ECMAScript/Javascript进行测试:我看不到任何问题。可能没有^and$,多行匹配可能会有所不同。如果需要执行一次(或几次),并且数据不是几GB,那么只要使用regex101.com,它就可以为您完成任务。您说“相同”是什么意思?我发布了截图,至少在regex101上是有效的。很糟糕,我输入了一个错误。您说得对,这个更新的表达式很有效。非常感谢您的帮助,还有时间!:)
^.*?\s(.*$)