这真的开始让人痛苦了!
我正在尝试使用正则表达式条件在Oracle开发者中编写查询。
我的目标是查找所有包含非常规字符(非字母、空格、连字符和单引号)的姓氏。
例如,我需要查找:
J00ls
McDonald "Macca"
Smithy (Smith)
并且没有找到
Smith
Mckenzie-Smith
El Hassan
O'Dowd
我现在的问题是
select * from dm_name
WHERE regexp_like(last_name, '([^A-Za-z -])')
and batch_id = 'ATEST';
该语句排除了除单引号以外的所有字符。在输入单引号字符时,Oracle SQL Developer解析器将其视为文字。
我尝试过:
\' -- but got a "missing right parenthesis" error
||chr(39)|| -- but the search returned nothing
'' -- negated the previous character in the matching group e.g. '([^A-Za-z -''])' made names with '-' return.
我很感激您所提供的任何帮助。