查找所有非常规单引号

时间:2020-09-28 18:49:21

标签: sql oracle

我想从具有非常规撇号字符的列(姓)中获取所有记录。

U+2019U+2018U+201B(还有其他内容吗?)

1 个答案:

答案 0 :(得分:1)

您可以使用常规的expresion类来过滤行,如下所示:

select * from table where regexp_like(last_name, '[‘’`´‘’‛′‵]')

或者如果您不想直接在字符串中使用unicode字符:

select * from table where regexp_like(last_name, '[' || unistr('\2018\2019\201B`\00B4\2032\2035') || ']')

在Unicode中可以找到更多的非常规单引号:https://en.wikipedia.org/wiki/General_Punctuation

请注意某些https://en.wikipedia.org/wiki/Combining_Diacritical_Marks,因为它们可以与空格组合以使其看起来像引号。