正如标题所述,我不是最好的w / regex,所以任何人都可以提供适当的正则表达式:
UPDATE table SET column = REGEXP_REPLACE(column, {regex}, '''');
基本上,我想用一个单引号替换反斜杠的任何实例(\
),然后替换一个或多个单引号。
因此,字符串Hello World\'s
或Hello World\'''''s
应该变为Hello World's
,而不是Hello World\s
。
答案 0 :(得分:5)
这是相对简单的。请注意,反斜杠字符\
以及单引号字符'
(您在OP中转义)都需要进行转义。区别在于反斜杠必须在正则表达式本身中进行转义,而单引号则在字符串文字中进行转义。无论如何,足够的题外话。
UPDATE table SET column = REGEXP_REPLACE(column, '\\''+', '''', 'g');
希望这有帮助。
答案 1 :(得分:3)
您可以尝试以下操作:
SELECT REGEXP_REPLACE(column, '\\''['']*', '''','g') from table
编辑:当然\''+更好
SELECT REGEXP_REPLACE(column, '\\''+', '''','g') from table