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中children()方法用法实例
Jan 07 Javascript
JQuery中的事件及动画用法实例
Jan 26 Javascript
JavaScript实现输入框(密码框)出现提示语
Jan 12 Javascript
原生javascript实现的一个简单动画效果
Mar 30 Javascript
全面解析JavaScript中的valueOf与toString方法(推荐)
Jun 14 Javascript
Vue+axios 实现http拦截及路由拦截实例
Apr 25 Javascript
element上传组件循环引用及简单时间倒计时的实现
Oct 01 Javascript
微信小程序实现展示评分结果功能
Feb 15 Javascript
微信小程序实现发送模板消息功能示例【通过openid推送消息给用户】
May 05 Javascript
js Array.slice的8种不同用法示例
Jul 10 Javascript
vue插槽slot的简单理解与用法实例分析
Mar 14 Javascript
原生js实现拖拽移动与缩放效果
Aug 24 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
调试WordPress中定时任务的相关PHP脚本示例
2015/12/10 PHP
PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)
2016/09/11 PHP
数组任意位置插入元素,删除特定元素的实例
2017/03/02 PHP
PHP大文件分割上传 PHP分片上传
2017/08/28 PHP
PHP程序员简单的开展服务治理架构操作详解(二)
2020/05/14 PHP
在html页面中包含共享页面的方法
2008/10/24 Javascript
有关DOM元素与事件的3个谜题
2010/11/11 Javascript
js事件(Event)知识整理
2012/10/11 Javascript
js实现表单检测及表单提示的方法
2015/08/14 Javascript
基于jQuery实现点击最后一行实现行自增效果的表格
2016/01/12 Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
2017/05/03 Javascript
nodejs制作爬虫实现批量下载图片
2017/05/19 NodeJs
微信小程序实现表单校验功能
2020/03/30 Javascript
JS获取并处理php数组的方法实例分析
2018/09/04 Javascript
使用jquery模拟a标签的click事件无法实现跳转的解决
2018/12/04 jQuery
Koa 中的错误处理解析
2019/04/09 Javascript
javascript如何实现create方法
2019/11/04 Javascript
如何实现vue的tree组件
2020/12/03 Vue.js
zookeeper python接口实例详解
2018/01/18 Python
python树的同构学习笔记
2019/09/14 Python
CSS3实现多重边框的方法总结
2016/05/31 HTML / CSS
香蕉共和国Banana Republic官网:美国GAP旗下偏贵族风格服饰品牌
2016/11/21 全球购物
Python如何实现单例模式
2016/06/03 面试题
送货司机岗位职责
2013/12/11 职场文书
2014小学植树节活动总结
2014/03/10 职场文书
新年联欢会主持词
2014/03/27 职场文书
竞聘上岗演讲稿
2014/05/16 职场文书
投标人廉洁自律承诺书
2014/05/26 职场文书
运动会口号16字
2014/06/07 职场文书
先进党支部事迹材料
2014/12/24 职场文书
工作检讨书大全
2015/01/26 职场文书
运动会开幕词
2015/01/28 职场文书
西岭雪山导游词
2015/02/06 职场文书
学校教学管理制度
2015/08/06 职场文书
高考满分作文赏析(2篇)
2019/08/12 职场文书
Python insert() / append() 用法 Leetcode实战演示
2021/03/31 Python