在PHP中,可以使用mb_convert_kana函数将全角字符转换为单角字符。他们称其为“将禅角转换为韩角”。例如,我有一个要转换的字符串:

dbl = "BOX"

我想找到这样的方法
dbl = "BOX".convert_to_half_width # dbl is now "BOX"

有没有办法在Ruby中做到这一点?

最佳答案

我结合使用了Ruby内置的NKFString#tr

require 'nkf'
dbl = "BOXカタカナ"
dbl = NKF.nkf('-X -w', dbl).tr('0-9a-zA-Z', '0-9a-zA-Z')
# dbl now is "BOXカタカナ"

这还有将半角片假名转换为全尺寸片假名的额外好处。

关于ruby - 将全角日文文本转换为半角(zen-kaku到han-kaku),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11117966/

10-13 06:10