一个中文字符好像是占了两个英文字符的位置,比如 "测试"的显示长度跟'test'的是一样的 所以 printf 的时候可能要将中文字符串的 length *2
赞
@neverlandxy_naix Unicode 长度问题可以用 unicode-display_width 这个 gem
require 'unicode/display_width'
>> s='你的就是我的'
=> "你的就是我的"
>> s.size
=> 6
>> s.display_size
=> 12
#12 楼 @neverlandxy_naix 我说这两天怎么突然多了几个 star 呢。 楼主赞一个,当时纯粹是 npm 练手,没考虑效率问题,毕竟也不会经常看,哈哈。 中文问题很头大,xxb 在 linux 下貌似对齐还是有问题的。