`

全角,半角互换

阅读更多
对于全角和半角互换,oracle 提供了两个函数to_multi_byte和to_single_byte函数,只是针对字母和数字有效,如:
SQL> select to_multi_byte('1234') from dual;
 
TO_MULTI_BYTE('1234')
---------------------
1234
SQL> select to_single_byte('1234') from dual;
 
TO_SINGLE_BYTE('1234')
--------------------------
1234

对于日文,中文以及其它语言字符,实现都不够,以下,实现了日文字符的全半角互换:
SELECT UTL_I18N.TRANSLITERATE(TO_MULTI_BYTE('abc123'), 'KANA_HIRAGANA') NAME --半角カタカナ・英数字-->全角ひらかな
,UTL_I18N.TRANSLITERATE(TO_MULTI_BYTE('1234'), 'KANA_FWKATAKANA') KANA --半角カタカナ-->全角カタカナ
,UTL_I18N.TRANSLITERATE(TO_MULTI_BYTE('1234'), 'KANA_HIRAGANA') SEIKINAME --半角カタカナ-->全角ひらかな
,UTL_I18N.TRANSLITERATE(TO_MULTI_BYTE('ひたかな'), 'HIRAGANA_HWKATAKANA') SEIKIKANA --全角ひらかな・カタカナ-->半角タカ
 from dual;

如果出现乱码问题,可以这么解决:
SQL> SELECT * FROM sys.props$;
 
NAME                           VALUE$                                                                           COMMENT$
------------------------------ -------------------------------------------------------------------------------- --------------------------------------------------------------------------------
DICT.BASE                      2                                                                                dictionary base tables version #
DEFAULT_TEMP_TABLESPACE        TEMP                                                                             Name of default temporary tablespace
DBTIMEZONE                     +08:00                                                                           DB time zone
NLS_LANGUAGE                   AMERICAN                                                                         Language
NLS_TERRITORY                  AMERICA                                                                          Territory
NLS_CURRENCY                   $                                                                                Local currency
NLS_ISO_CURRENCY               AMERICA                                                                          ISO currency
NLS_NUMERIC_CHARACTERS         .,                                                                               Numeric characters
NLS_CHARACTERSET               UTF8                                                                             Character set
NLS_CALENDAR                   GREGORIAN                                                                        Calendar system
NLS_DATE_FORMAT                DD-MON-RR                                                                        Date format
NLS_DATE_LANGUAGE              AMERICAN                                                                         Date language
NLS_SORT                       BINARY                                                                           Linguistic definition
NLS_TIME_FORMAT                HH.MI.SSXFF AM                                                                   Time format
NLS_TIMESTAMP_FORMAT           DD-MON-RR HH.MI.SSXFF AM                                                         Time stamp format
NLS_TIME_TZ_FORMAT             HH.MI.SSXFF AM TZR                                                               Time with timezone format
NLS_TIMESTAMP_TZ_FORMAT        DD-MON-RR HH.MI.SSXFF AM TZR                                                     Timestamp with timezone format
NLS_DUAL_CURRENCY              $                                                                                Dual currency symbol
NLS_COMP                       BINARY                                                                           NLS comparison
NLS_LENGTH_SEMANTICS           BYTE                                                                             NLS length semantics
 
NAME                           VALUE$                                                                           COMMENT$
------------------------------ -------------------------------------------------------------------------------- --------------------------------------------------------------------------------
NLS_NCHAR_CONV_EXCP            FALSE                                                                            NLS conversion exception
[color=red][b]NLS_NCHAR_CHARACTERSET         AL16UTF16  [/b] [/color]                                                                     NCHAR Character set
NLS_RDBMS_VERSION              10.2.0.4.0                                                                       RDBMS version for NLS parameters
GLOBAL_DB_NAME                 133g5                                                                           Global database name
EXPORT_VIEWS_VERSION           8                                                                                Export views revision #
DEFAULT_TBS_TYPE               SMALLFILE                                                                        Default tablespace type
WORKLOAD_CAPTURE_MODE                                                                                           CAPTURE implies workload capture is in progress
DEFAULT_PERMANENT_TABLESPACE   USERS                                                                            Default Permanent Tablespace ID
 
28 rows selected


然后更新语言信息即可:
update   sys.props$   set   value$=''JA16SJIS''   WHERE   name   =   ''NLS_CHARACTERSET''; 

分享到:
评论

相关推荐

    一款高性能敏感词(非法词/脏字)检测过滤组件,附带繁体简体互换,支持全角半角互换,汉字转拼音,模糊搜索等功能。

    再者,支持全角半角互换是另一大亮点。在中文输入法中,全角字符和半角字符有时会被混淆,导致误解。全角字符主要用于中文环境,半角字符则常见于英文或其他拉丁字母文字。此功能使得组件能适应各种输入习惯,减少因...

    一款高性能非法词(敏感词)检测组件,附带繁体简体互换,支持全角半角互换,获取拼音首字母,获取拼音字母等功能

    本文将详细介绍一款高性能的非法词(敏感词)检测组件,它不仅具备基础的敏感词检查功能,还集成了多种文本处理特性,如繁体简体互换、全角半角互换、拼音首字母获取以及拼音字母获取等。这些功能对于提高文本处理...

    一款高性能敏感词(非法词_脏字)检测过滤组件,附带繁体简体互换,支持全角半角互换,汉字转拼音,模糊搜索等功能.zip

    3. **全角半角互换**:在中文环境中,全角字符(如全角数字、字母、标点)和半角字符(如英文标准字符)的使用是共存的。组件能识别并转换这两种形式的字符,增强了敏感词匹配的准确性,避免因字符形式不同而漏检。 ...

    ToolGood.Words:一个完整​​的高级敏感词(非法词脏字)检测过滤组件,附带繁体简体互换,支持全角半角互换,汉字转拼音,模糊搜索等功能

    工具好词一个简单的高级非法词(敏感词)检测组件,附带繁体简体互换,支持全角半角互换,获取拼音首字母,获取拼音字母,拼音模糊搜索等功能。 C#语言,使用StringSearchEx2.Replace过滤,在48k敏感词库上的过滤...

    C#全角和半角互换

    本篇文章将详细探讨C#中全角和半角字符的概念、转换方法以及如何在实际编程中进行互换。 首先,我们要理解什么是全角和半角字符。全角字符通常在东亚语言环境中使用,如中文、日文、韩文等,它们占用两个字节的存储...

    andy-java敏感字符过滤.zip

    sensitive-word 基于 DFA 算法实现的高性能敏感词工具。工具使用 java 实现,帮助我们解决常见的问题。6W+ 词库,且不断优化更新 基于 DFA 算法,性能较好 ...支持全角半角互换 支持英文大小写互换

    C#高性能敏感词检测过滤组件

    2. **全角半角互换**:在输入法使用过程中,全角字符和半角字符的混淆可能会导致漏检。该组件支持这种转换,确保了对各种形式的字符都能进行有效过滤。 3. **汉字转拼音**:对于未包含在敏感词库中的词汇,可以通过...

    dotnet-一款高性能敏感词非法词脏字检测过滤组件

    3. **全角半角互换**:在中文输入环境下,全角字符(如“。”)和半角字符(如“.”)有时会被混淆,此组件能够处理这种差异,确保无遗漏地检测所有可能的敏感词。 4. **汉字转拼音**:除了直接的汉字检测,组件还...

    Python-ToolGoodWords是一款高性能非法词敏感词检测组件

    3. **全角半角互换**:考虑到中文输入法的多样性,ToolGood.Words能够识别并处理全角字符和半角字符之间的差异,确保无论输入方式如何,都能准确检测敏感词。 4. **拼音首字母和拼音获取**:除了基础的汉字检测,该...

    C#学习笔记

    文本全角半角互换** 在处理东亚语言时,全角和半角字符的区别非常重要。在C#中,可以通过遍历字符串中的每一个字符并检查其Unicode类别来进行全角半角的转换。 **6. 设置界面光标** 在Windows Forms中,可以使用...

    Gidot TypeSetter(排版助手)

    软件主要功能:段落智能修正、去掉某些防拷贝的干扰符、修正段落首尾空格、互换繁简字体、全角半角随意互换、修正标点符号、一键排版&拷贝即排版。 功能: ·修正段落首尾的空格。 ·去掉文章内的空段落、重复换行...

    排版助手 GIDOT TYPESETTER

    软件主要功能:段落智能修正、去掉某些防拷贝的干扰符、修正段落首尾空格、互换繁简字体、全角半角随意互换、修正标点符号、一键排版&拷贝即排版。 此软件终身免费,100%绿色纯净,不读写注册表不捆绑软件和恶意...

    asp将全角的字符转变成半角字符,将半角转变成全角d的代码

    在编程领域,尤其是在处理中文字符时,经常需要进行全角字符和半角字符之间的转换。...通过这个函数,可以方便地在ASP环境中实现全角字符和半角字符的互换,这对于处理包含中英文混合的字符串非常有用。

    jquery插件

    通过这个jQuery插件,开发者可以轻松地在网页中实现全角和半角字符的互换,这对于处理中文输入的网页应用来说是一项实用的功能。了解并掌握这些知识点,对于提升JavaScript和jQuery的开发技能是非常有益的。

    排版助手.zip

    全角半角随意互换将全角标点及英文字母转换成半角,或将半角标点及英文字母转换成全角。 修正标点符号将许多连续的句点转换成省略号,将文中的句点转换称句号,修正不对称的引号。 一键排版&拷贝即排版选中一键排版...

    排版助手 v3.1.0.12

    全角半角随意互换将全角标点及英文字母转换成半角,或将半角标点及英文字母转换成全角。修正标点符号将许多连续的句点转换成省略号,将文中的句点转换称句号,修正不对称的引号。一键排版&拷贝即排版选中一键排版后...

    前端开源库-moji

    moji库的核心功能是实现半角(Half-width)和全角(Full-width)字符的互换。在中文和日文中,全角字符通常用于正式文本和排版,而半角字符则常见于键盘输入或者编程中。例如,数字、字母以及一些标点符号在全角和...

Global site tag (gtag.js) - Google Analytics