lua string.sub截取中英文】的更多相关文章

cocos2dx 2.x环境,要做一个截取很长的字符串的前100个字符显示的小功能. PC环境ok,出了ios包发现有时候这个字符串会显示不出,猜测了下可能是跟中文字在lua里每个字占3个字符有关,举个例子: 原字符串"一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十",第100个字符是第四组第一个"一"的第一个字符,PC上显示会是一个小乱码,真机上可能就显示不正常了. local function getByteCount(str,…
<script> function subString(str, len, hasDot) { var newLength = 0; var newStr = ""; var chineseRegex = /[^\x00-\xff]/g; var singleChar = ""; var strLength = str.replace(chineseRegex,"**").length; for(var i = 0;i < st…
string库提供了字符串处理的通用函数. 例如字符串查找.子串.模式匹配等. 当在 Lua 中对字符串做索引时,第一个字符从 1 开始计算(而不是 C 里的 0 ). 索引可以是负数,它指从字符串末尾反向解析. 即,最后一个字符在 -1 位置处,等等. 字符串库中的所有函数都在表string 中. 它还将其设置为字符串元表的__index 域. 因此,你可以以面向对象的形式使用字符串函数. 例如,string.byte(s,i) 可以写成 s:byte(i). 字符串库假定采用单字节字符编码…
<!doctype html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>CSS截取中英文混合字符串长度</title> <meta name="keywords" content="" /> <me…
<?php //////////////////////////////////////////////////////////////////// // PHP截取中英文及标点符号混合的字符串函数(绝对不会出现乱码) // 本程序在utf-8.gb2312中测试通过.使用者自行测试big5. // 函数 left( 源字符串, 截取指定的字符串个数, 编码(可省略,默认为utf-8) ) /////////////////////////////////////////////////////…
> aaa='/p/v2/api/winapi/adapter/lgj'> print(string.find(aaa, "^/.+/adapter/(.*)"))1 28 lgj > aaa='/p/v2/api/winapi/adapter/lgj/zy/l'> print(string.find(aaa, "^/.+/adapter/(.*)"))1 33 lgj/zy/l > print(string.gsub('lgj/zy/…
网站制作过程中,提示层文字超出,需要JS做字符串截取,但是呢,我们常常会烦恼文字中英文混合如何判断,因为我们知道在JS中 string.length这个值是不考虑中英文的,但是计算机对中英文的识别是 中文占2个字符,英文一个字母占一个字符(包括数字).查阅相关资料后,最近找到一个好的办法解决此问题. 分析下逻辑,比如我们要对字符串截取10个字(英文就是20个字符),创建一个函数 view plaincopy to clipboardprint? function SetSub(str,n){ /…
smarty中用truncate来截取含有中英文的字符串,可能会出现中文乱码问题.字符串截取长度不一问题,下面是新建个扩展函数,或修改原Truncate函数方法也可以的.扩展smarty/plugins目录下自己新建一个文件,写个函数,修改后的smartTruncate: 文件名:modifier.smartTruncate.php  内容如下: <?php function smarty_modifier_smartTruncate($string, $length = 80, $etc =…
有时在显示某段文字的时候,可能会太长,影响我们页面的显示效果.如果仅是英文,那么我们可以用String.substring(start, end)函数就已经够用了.但是通常我们都会遇到既有英文,又有汉字的情况.而汉字是占用2个字节的,如果用String.substring(start, end)截取字符串的话,会发现汉字截取后比英文截取后个数虽然相同,但是长度还是长出去不少(具体要视字符个数来决定). 下面是一个实现这个功能的函数: <script language="javascript…
lua的string函数: 参数中的index从1开始,负数的意义是从后开始往前数,比如-1代表最后一个字母 对于string类型的值,可以使用OO的方式处理,如string.byte(s.i)可以被写成s:byte(i) It also sets a metatable for strings where the __index field points to the string table. Therefore, you can use the string functions in ob…