def trc_utf8(text, length = 40, t_string = "...")
l=0
char_array=text.unpack("U*")
char_array.each_with_index do |c,i|
l = l+ (c<127 ? 0.5 : 1)
if l>=length
return char_array[0..i].pack("U*")+(i<char_array.length-1 ? t_string : "")
end
end
return text
end
截取中文
最新推荐文章于 2021-02-12 14:30:55 发布
本文介绍了一个用于处理UTF-8编码文本的Ruby方法,该方法能够根据指定长度来截断字符串,并考虑到不同字符宽度的影响。适用于需要对多字节字符进行精确长度控制的应用场景。
1027

被折叠的 条评论
为什么被折叠?



