正则表达式匹配除特定单词以外的所有内容

时间:2019-06-03 08:01:35

标签: sql regex regex-negation

我浏览了除正则表达式外的其他问题,但找不到我的问题的答案。

我有SQL语句

select --(* vendor(microsoft), product(odbc) guid'12345678-1234-1234-1234-123456789012' *)-- from TAB

使用正则表达式,我想查找该字符串中的每个字符,除了

--(* vendor(microsoft), product(odbc)

*)--

供应商和产品名称(Microsoft和odbc)也可以是任何东西,我仍然要排除它。

我不在乎哪种字符,或者SQL语句在语法上是否正确。该字符串可能看起来像这样,但我仍然想查找所有内容,包括空格,但不包括我上面提到的内容:

{Jane           Doe?= --(* vendor(micro1macro2?), product(cdb!o) 123$% --(**) *)-- = ?

到目前为止,我有这样的表达:

(--\(\* vendor\(.*\), product\(.*?\))|(\*\)--)

似乎可以找到我想排除的内容https://regex101.com/r/rMbYHz/204。但是,我无法取消它。

1 个答案:

答案 0 :(得分:0)

replace()会做什么?

select replace(replace(t.col, '--(* vendor(microsoft), product(odbc)', ''
                      ), '*)--', ''
              )
相关问题