我有以下规则:
string_literal \'(\\.|[^\\'])*\'
但是这假定'以反斜杠转义,但是在SQL中,您也可以使用'来表示单引号。什么是正确的正则表达式?
我采用了此解决方案:
string_literal '([^\']|''|\')*'
来自此其他帖子https://stackoverflow.com/a/6718928/1470961
转义字符不仅可以是,还可以是任何字符。因此,这里有2种选择:
('(\\.|[^'])*')+
或
'(\\.|''|[^'])*'