Notepad++ 查找和替换(使用正则表达式)问题

Notepad++ 查找和替换(使用正则表达式)问题

我因为一个奇怪的问题而发疯,我一直在尝试寻找这段文字:

CREATE Proc [dbo].[procName] (@EMI_ID numeric(8), @ESYNTH_ID numeric(8), @FLD_ID numeric(8), @SYNTH_ID numeric(8)) As

我使用这个正则表达式:

CREATE Proc \[dbo\]\.\[(.+)\] \(@EMI_ID numeric\(8\), @ESYNTH_ID numeric\(8\), @FLD_ID numeric\(8\), @SYNTH_ID numeric\(8\)\) As

然而,在“查找”中,
这不起作用,但如果我尝试仅使用这个正则表达式进行匹配(与上面相同,但没有最后一个存储过程参数):

CREATE Proc \[dbo\]\.\[(.+)\] \(@EMI_ID numeric\(8\), @ESYNTH_ID numeric\(8\), @FLD_ID numeric\(8\),

它可以毫无问题地运行。

我也尝试过使用 TextFX 的查找和替换功能,但无济于事。
请帮忙,我快疯了!

谢谢 ;)

答案1

是的,你的正则表达式是正确的。

但在我的测试中,notepad++ 似乎被限制为 103 个字符,正则表达式字符串。

CREATE Proc \[dbo]\.\[(.+)\] \(@EMI_ID numeric\(8\), @ESYNTH_ID numeric\(8\), @FLD_ID numeric\(8\), @S

测试并发现我创建的文本文件中有多个。

希望这可以帮助。

答案2

虽然不是最好的正则表达式,但您的第一个正则表达式应该与目标字符串匹配。这是 Notepad++ 的一个缺陷。

我发现程序员的记事本成为一个更好的文本编辑器,事实上你的正则表达式在这个程序中起作用,

相关内容