cjk - Postgresql 将日文全角转换为半角
问题描述
我正在处理日语数据,在一些日语单词中,有英语单词和数字。
SYSKEN、松井ケ丘3、コメリH&G、筱路7-1就是例子。
我想通过抛出一个函数或任何可能的方式将这些英文和数字全角转换为半角。
上面输入的输出应该类似于“SYSKEN, 松井ケ丘3, コメリH&G, 筱路7-1”
如果有人知道最好的开始方式,我将不胜感激。
解决方案
使用 translate() 函数怎么样?
-- prepare test data
CREATE TABLE address (
id integer,
name text
);
INSERT INTO address VALUES (1, 'SYSKEN, 松井ケ丘3, コメリH&G, 篠路7-1');
-- show test data
SELECT * from address;
-- convert Full-Width to Half-Width Japanese
UPDATE address SET name = translate(name,
'0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ',
'0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
);
-- see the converted data
SELECT * from address;
该代码将名称栏改为“SYSKEN,松井ケ丘3,コメリH&G,筱路7-1”。
推荐阅读
- c++ - 快速排序功能的不正确比较和交换计数器输出
- yocto - 如何在 Yocto - Makefile 系统中构建 bootgen 实用程序?
- c++ - 当使用 C::B 构建的程序不起作用时
- gitlab - Gitlab按最后提交日期对多个存储库进行排序
- eclipse - 在 Eclipse 中为导入/导出上下文菜单添加菜单项
- java - Java OpenCV 无法从 MatOfInt4 复制到 MatOfInt4
- php - 从 PHPWord 中的 template.docx 获取变量计数和名称
- python - 从多行字符串的第一行读取
- javascript - Express next() 正在触发下一个路由,该路由在调用当前路由的 next() 之后参数化
- java - 如何为目录列表实现 ClassLoader 作为类路径?