2

使用正则表达式,我想通过匹配 'CONSTRAINT ... ( ))' 并将其替换为 '\*CONSTRAINT ... ( ))*\' 来注释掉约束。操作员 。notepad++ 中的 * 匹配整个文档,所以我不能使用它。

我正在考虑类似以下的内容,但是需要进行一些修改:

CONSTRAINT[\w\s]*\)\)

输入:

    modified_date datetime NULL,
    etl_id int NULL,
    etl_date smalldatetime NULL,
 CONSTRAINT PK_WORK PRIMARY KEY CLUSTERED 
(
    work_id ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) 
) 

谢谢

4

2 回答 2

1

我会做 :

搜索:(,\s*CONSTRAINT.+?\)\s+\))
替换为:/*$1*/

我没有英文版的记事本++,但我认为标签还可以。

验证是否regex已选中并且还. includes \n

于 2013-02-25T10:17:35.623 回答
0

您需要使您的正则表达式不贪婪:

 CONSTRAINT\([^)]+\)\)
于 2013-02-25T10:11:19.487 回答