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获得页面元素的坐标值实现思路及代码
Apr 15 Javascript
jQuery animate()实现背景色渐变效果的处理方法【使用jQuery.color.js插件】
Mar 15 Javascript
微信小程序实现图片懒加载的示例代码
Dec 13 Javascript
实战node静态文件服务器的示例代码
Mar 08 Javascript
vue组件与复用详解
Apr 08 Javascript
在Mac下彻底卸载node和npm的方法
May 16 Javascript
JavaScript基于数组实现的栈与队列操作示例
Dec 22 Javascript
微信小程序实现判断是分享到群还是个人功能示例
May 03 Javascript
记一次vue跨域的解决
Oct 21 Javascript
JavaScript实现网页下拉菜单效果
Nov 20 Javascript
原生JS实现京东查看商品点击放大
Dec 21 Javascript
vue3.0 项目搭建和使用流程
Mar 04 Vue.js
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
劣质的PHP代码简化
2010/02/08 PHP
PHP flock 文件锁详细介绍
2012/12/29 PHP
PHP实现HTML生成PDF文件的方法
2014/11/07 PHP
laravel 5 实现模板主题功能(续)
2015/03/02 PHP
php发送邮件的问题详解
2015/06/22 PHP
php基于curl实现随机ip地址抓取内容的方法
2016/10/11 PHP
Laravel配置全局公共函数的方法步骤
2019/05/09 PHP
Laravel 实现添加多语言提示信息
2019/10/25 PHP
屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键 的javascript代码
2007/04/01 Javascript
javascript向flash swf文件传递参数值注意细节
2012/12/11 Javascript
关于js中alert弹出窗口文本换行问题简单详细说明
2012/12/11 Javascript
gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点
2016/02/21 Javascript
微信小程序 教程之模块化
2016/10/17 Javascript
慕课网题目之js实现抽奖系统功能
2017/09/19 Javascript
express如何使用session与cookie的方法
2018/01/30 Javascript
vuejs实现折叠面板展开收缩动画效果
2018/09/06 Javascript
详解js 创建对象的几种方法
2019/03/08 Javascript
JS实现的tab切换并显示相应内容模块功能示例
2019/08/03 Javascript
windows下python之mysqldb模块安装方法
2017/09/07 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
深入理解Python中的 __new__ 和 __init__及区别介绍
2018/09/17 Python
python3实现zabbix告警推送钉钉的示例
2019/02/20 Python
python获取磁盘号下盘符步骤详解
2019/06/19 Python
python如何解析配置文件并应用到项目中
2019/06/27 Python
Python二维码生成识别实例详解
2019/07/16 Python
Django文件存储 默认存储系统解析
2019/08/02 Python
python单例模式原理与创建方法实例分析
2019/10/26 Python
python 画条形图(柱状图)实例
2020/04/24 Python
HTML5 video标签(播放器)学习笔记(一):使用入门
2015/04/24 HTML / CSS
翻译专业应届生求职信
2013/11/23 职场文书
工商管理系学生的自我评价分享
2013/11/29 职场文书
化学教学随笔感言
2014/02/19 职场文书
《老山界》教学反思
2014/04/08 职场文书
税务干部个人整改措施思想汇报
2014/10/10 职场文书
2015年政风行风工作总结
2015/04/21 职场文书
pytorch中Schedule与warmup_steps的用法说明
2021/05/24 Python