【发布时间】:2021-10-04 21:24:34
【问题描述】:
我的 regexp_replace 没有按预期删除变音符号。我认为这是因为整理,但我的测试确实显示不同。据我了解,ü不应该是a-zA-Z0-9的一部分。显然是这样的:
select SYS_CONTEXT('USERENV','NLS_SORT') from dual;
select decode('ü','u',0,1) from dual;
select regexp_replace('ABcdäü~~~--- Ø asdsad 123 /() ´´´', '[^a-zA-Z0-9]', '') x from dual;
begin
if 'ü' > 'z' then
dbms_output.PUT_LINE(1);
else
dbms_output.PUT_LINE(0);
end if;
if 'ü' > 'Z' then
dbms_output.PUT_LINE(1);
else
dbms_output.PUT_LINE(0);
end if;
if 'ü' > '9' then
dbms_output.PUT_LINE(1);
else
dbms_output.PUT_LINE(0);
end if;
end;
结果:
German
1
ABcdäüØasdsad123
1
1
1
【问题讨论】:
标签: sql oracle regexp-replace