Jquery截取中文字符串的实现代码


Posted in Javascript onDecember 22, 2010
function cut_str($sourcestr,$cutlength) { 
$returnstr=''; 
$i=0; 
$n=0; 
$str_length=strlen($sourcestr);//字符串的字节数 
while (($n<$cutlength) and ($i<=$str_length)) 
{ 
$temp_str=substr($sourcestr,$i,1); 
$ascnum=Ord($temp_str);//得到字符串中第$i位字符的ascii码 
if ($ascnum>=224) //如果ASCII位高与224, 
{ 
//根据UTF-8编码规范,将3个连续的字符计为单个字符 
$returnstr=$returnstr.substr($sourcestr,$i,3); 
$i=$i+3; //实际Byte计为3 
$n++; //字串长度计1 
} 
elseif ($ascnum>=192) //如果ASCII位高与192, 
{ 
//根据UTF-8编码规范,将2个连续的字符计为单个字符 
$returnstr=$returnstr.substr($sourcestr,$i,2); 
$i=$i+2; //实际Byte计为2 
$n++; //字串长度计1 
} 
elseif ($ascnum>=65 && $ascnum<=90) //如果是大写字母, 
{ 
$returnstr=$returnstr.substr($sourcestr,$i,1); 
$i=$i+1; //实际的Byte数仍计1个 
$n++; //但考虑整体美观,大写字母计成一个高位字符 
} 
else //其他情况下,包括小写字母和半角标点符号, 
{ 
$returnstr=$returnstr.substr($sourcestr,$i,1); 
$i=$i+1; //实际的Byte数计1个 
$n=$n+0.5; //小写字母和半角标点等与半个高位字符宽... 
} 
} 
if ($str_length>$cutlength){ 
$returnstr = $returnstr . "...";//超过长度时在尾处加上省略号 
} 
return $returnstr; 
}
Javascript 相关文章推荐
jquery实现的元素的left增加N像素 鼠标移开会慢慢的移动到原来的位置
Mar 21 Javascript
对xmlHttp对象的理解
Jan 17 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
Dec 04 Javascript
IE的事件传递-event.cancelBubble示例介绍
Jan 12 Javascript
js数组的基本操作(很全自己整理的)
Oct 16 Javascript
详解JavaScript RegExp对象
Feb 04 Javascript
jQuery实现文档树效果
Feb 20 Javascript
JavaScript上传文件时不用刷新页面方法总结(推荐)
Aug 15 Javascript
ES6中的Promise代码详解
Oct 09 Javascript
基于vue cli 通过命令行传参实现多环境配置
Jul 12 Javascript
Node.js 使用request模块下载文件的实例
Sep 05 Javascript
vue + typescript + 极验登录验证的实现方法
Jun 27 Javascript
jquery里的each使用方法详解
Dec 22 #Javascript
jQuery学习笔记之jQuery的动画
Dec 22 #Javascript
jQuery学习笔记之jQuery的事件
Dec 22 #Javascript
jQuery学习笔记之jQuery的DOM操作
Dec 22 #Javascript
jQuery学习笔记之jQuery选择器的使用
Dec 22 #Javascript
jQuery学习笔记之DOM对象和jQuery对象
Dec 22 #Javascript
jQuery学习笔记之Helloworld
Dec 22 #Javascript
You might like
40个迹象表明你还是PHP菜鸟
2008/09/29 PHP
php数组函数序列之array_sum() - 计算数组元素值之和
2011/10/29 PHP
PHP 解决session死锁的方法
2013/06/20 PHP
关于PHPDocument 代码注释规范的总结
2013/06/25 PHP
PHP实现在线阅读PDF文件的方法
2015/06/17 PHP
提交表单后 PHP获取提交内容的实现方法
2016/05/25 PHP
thinkPHP事务操作简单案例分析
2019/10/17 PHP
js 编程笔记 无名函数
2011/06/28 Javascript
纯JS实现的批量图片预览加载功能
2011/08/14 Javascript
创建一个类Person的简单实例
2016/05/17 Javascript
Vue.js实现一个todo-list的上移下移删除功能
2017/06/26 Javascript
详解node+express+ejs+bootstrap构建项目
2017/09/27 Javascript
Vue+webpack项目配置便于维护的目录结构教程详解
2018/10/14 Javascript
js实现开关灯效果
2020/03/30 Javascript
VUE实现强制渲染,强制更新
2019/10/29 Javascript
JS替换字符串中指定位置的字符(多种方法)
2020/05/28 Javascript
react antd表格中渲染一张或多张图片的实例
2020/10/28 Javascript
Python使用MYSQLDB实现从数据库中导出XML文件的方法
2015/05/11 Python
使用Python的Tornado框架实现一个Web端图书展示页面
2016/07/11 Python
Python决策树分类算法学习
2017/12/22 Python
对python数据切割归并算法的实例讲解
2018/12/12 Python
python 求1-100之间的奇数或者偶数之和的实例
2019/06/11 Python
用django-allauth实现第三方登录的示例代码
2019/06/24 Python
利用Pandas和Numpy按时间戳将数据以Groupby方式分组
2019/07/22 Python
python实现一个点绕另一个点旋转后的坐标
2019/12/04 Python
Python Pandas 转换unix时间戳方式
2019/12/07 Python
大整数数相乘的问题
2012/07/22 面试题
Oracle里面常用的数据字典有哪些
2014/02/14 面试题
中专毕业生自我鉴定
2013/11/21 职场文书
公司部门司机岗位职责
2014/01/03 职场文书
商业融资计划书
2014/04/29 职场文书
公司委托书格式范文
2014/10/09 职场文书
委托书英文
2015/01/28 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
秋收起义观后感
2015/06/11 职场文书
开发者首先否认《遗弃》被取消的传言
2022/04/11 其他游戏