translate()
是一个用于替换字符串中字符集的系统函数。
translate()
添加于 PostgreSQL 6.1。
用法
translate ( string text, from text, to text ) → text
如果在源字符串中存在,则来自字符串中的每个字符都将替换为目标字符串中对应的字符。如果来自字符串中的字符在目标字符串中没有对应的字符(即来自字符串比目标字符串长),则该字符将被删除。
更改历史记录
- PostgreSQL 6.1
- 添加 (提交 83978e1e)
示例
translate()
的基本执行,将 b
和 r
的出现分别替换为 p
和 o
postgres=# SELECT translate('foobar', 'br', 'po'); translate ----------- foopao (1 row)
来自字符串中在目标字符串中没有对应字符的字符(在本例中为:f
)将被删除
postgres=# SELECT translate('foobar', 'brf', 'po'); translate ----------- oopao (1 row)
translate()
支持多字节字符串
postgres=# SELECT translate('こん', 'ん', 'の'); translate ----------- この (1 row)
参考
- PostgreSQL 文档: 其他字符串函数