lua计算 字符串宽度(中文英文混合)
2016-07-01 20:23
393 查看
方法一:
--- 获取字符宽度(中文算2个字符)
--
-- @param string str 原始字符串
-- @return number 字符宽度
function Util.Strlen(str)
local bytes = { string.byte(str, 1, #str) }
local length, begin = 0, false
for _, byte in ipairs(bytes) do
if byte < 128 or byte >= 192 then
begin = false
length = length + 1
elseif not begin then
begin = true
length = length + 1
end
end
return length
end
方法二:
local len = utf8.len(str) + string.len(str))/2
--- 获取字符宽度(中文算2个字符)
--
-- @param string str 原始字符串
-- @return number 字符宽度
function Util.Strlen(str)
local bytes = { string.byte(str, 1, #str) }
local length, begin = 0, false
for _, byte in ipairs(bytes) do
if byte < 128 or byte >= 192 then
begin = false
length = length + 1
elseif not begin then
begin = true
length = length + 1
end
end
return length
end
方法二:
local len = utf8.len(str) + string.len(str))/2
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- android string.xml文件中的整型和string型代替
- Android java 与 javascript互访(相互调用)的方法例子
- android上改变listView的选中颜色
- String.intern
- Mootools 1.2教程 函数
- autoit InputBox 函数
- 文件遍历排序函数
- Prototype源码浅析 String部分(二)
- Ruby中的String对象学习笔记
- 关于C#中排序函数的总结
- Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页
- ASP下经常用的字符串等函数参考资料
- PostgreSQL教程(五):函数和操作符详解(1)
- DOS批处理 函数定义与用法
- asp Chr 函数 数字转字母的方法
- Lua中的函数精讲笔记
- Lua中的闭合函数、非全局函数与函数的尾调用详解
- Lua中调用C++函数示例
- Lua实现split函数