正则表达式 - 注释掉SQL限制

时间:2013-02-25 09:38:55

标签: sql regex notepad++

使用正则表达式我希望通过匹配'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) 
) 

由于

2 个答案:

答案 0 :(得分:1)

我会这样做:

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

我没有Notepad ++的英文版,但我认为标签没问题。

确认已选中regex,并. includes \n

答案 1 :(得分:0)

你需要让你的正则表达式不贪婪:

 CONSTRAINT\([^)]+\)\)