0x00
level: 0x01
0x01
代码如下:
<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<body>
<script type="text/javascript">
var txt = "Aa要a国a啊b不a";
document.write("<br>");
document.write(getSubStr(txt, 4));
/**
* 返回指定显示字符数的函数(考虑中文和大写)
* 默认10个字符
* 中文和大写占两个字符
* 可能会返回 count + 1 个字符
*
* @param endIndex demo中传了4
*/
function getSubStr(str, endIndex){
var dualRegex = /[A-Z\u4e00-\u9fa5]/g;
var substr = str.substring(0, endIndex);
var dualNum = substr.match(dualRegex) == null ? 0 : substr.match(dualRegex).length;
var count = dualNum * 2 + (substr.length - dualNum);
// document.write(count + "...");
if (str.length == substr.length)// 是原来那个字符时,直接返回原来的
return str;
if (count >= 10)// 显示字符数量
return substr + (str.length == substr.length ? "" : "...");
return getSubStr(str, endIndex + 1);
}
</script>
</body>
</html>
原文:http://www.cnblogs.com/feng2015/p/4263793.html