我想在我的输出中显示特殊符号。
例如:我的文本可能包含实体代码,如 <
, >
; ETC。
我想将其显示为 <
, >
在我的输出中。我需要在 SQL 中执行此操作。
我用谷歌搜索并得到了一个函数,
select dbms_xmlgen.convert('ABC <; ',0) from dual
这执行相反的过程,它生成输出为“ABC <”
我试过解码,但它不起作用。我什至将 sql 命令更改为,
select dbms_xmlgen.convert('ABC <; ',1) from dual
,其中 1 代表 entity_decode
,但我没有得到所需的输出。
最佳答案
我没有使用 DBMS_XMLGEN.convert,而是使用了函数 UTL_I18N.UNESCAPE_REFERENCE:
SELECT UTL_I18N.UNESCAPE_REFERENCE('ABC < ') FROM DUAL;
结果:
ABC <
有关 Oracle 文档的更多信息:http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/u_i18n.htm#i998992
关于HTML 实体解码为特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17485228/