- 浏览: 508148 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (310)
- PHP (46)
- Java (50)
- Perl (0)
- Bash (5)
- C# (9)
- JavaScript (5)
- InDesign (7)
- 百宝箱 (5)
- 排错 (3)
- 招聘 (5)
- PHP他山之石 (3)
- SQL(DML) (10)
- Flex (15)
- LAMP (1)
- DIV+CSS (1)
- C#2008 (4)
- LOGO (7)
- WorkLog (1)
- 工作 (26)
- Groovy (7)
- 海量数据 (4)
- C/C++ (1)
- Android (1)
- PYTHON (13)
- Java开发实战1200例 (1)
- Java枚举与泛型 (16)
- Java基础应用 (24)
- poj (3)
- Java数组与集合 (18)
- 疑难解析 (3)
- JavaWeb (8)
- Jython (2)
- 成功之路 (0)
- Golang (2)
- Spring (2)
- 微信小程序 (0)
最新评论
-
DawnBells:
...
java.util.concurrent 之六:使用Future类和Callable类 -
kanglecjr:
http://tieba.baidu.com/f?kz=101 ...
泰语字母好看的手写体 -
zxjlwt:
学习了。http://surenpi.com
java.util.concurrent 之六:使用Future类和Callable类 -
spring_springdata:
java jsoup开源框架demo使用实例教程源代码下载:h ...
JSOUP获取网页数据返回403错误(403 error loading URL,connection类) -
narochids:
MARK!
JavaScript+Ajax实例大全(1521例以上),可以随编辑随执行
http://www.ccvita.com/27.html
1. 截取GB2312中文字符串
2. 截取utf8编码的多字节字符串
3. UTF-8、GB2312都支持的汉字截取函数
4. BugFree 的字符截取函数
1. 截取GB2312中文字符串
<?php < ?php //截取中文字符串 function mysubstr($str, $start, $len) { $tmpstr = ""; $strlen = $start + $len; for($i = 0; $i < $strlen; $i++) { if(ord(substr($str, $i, 1)) > 0xa0) { $tmpstr .= substr($str, $i, 2); $i++; } else $tmpstr .= substr($str, $i, 1); } return $tmpstr; } ?>
2. 截取utf8编码的多字节字符串
<?php //截取utf8字符串 function utf8Substr($str, $from, $len) { return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'. '((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s', '$1',$str); } ?>
3. UTF-8、GB2312都支持的汉字截取函数
<?php /* Utf-8、gb2312都支持的汉字截取函数 cut_str(字符串, 截取长度, 开始长度, 编码); 编码默认为 utf-8 开始长度默认为 0 */ function cut_str($string, $sublen, $start = 0, $code = 'UTF-8') { if($code == 'UTF-8') { $pa = "/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]|[\xf1-\xf7][\x80-\xbf][\x80-\xbf][\x80-\xbf]/"; preg_match_all($pa, $string, $t_string); if(count($t_string[0]) - $start > $sublen) return join('', array_slice($t_string[0], $start, $sublen))."..."; return join('', array_slice($t_string[0], $start, $sublen)); } else { $start = $start*2; $sublen = $sublen*2; $strlen = strlen($string); $tmpstr = ''; for($i=0; $i< $strlen; $i++) { if($i>=$start && $i< ($start+$sublen)) { if(ord(substr($string, $i, 1))>129) { $tmpstr.= substr($string, $i, 2); } else { $tmpstr.= substr($string, $i, 1); } } if(ord(substr($string, $i, 1))>129) $i++; } if(strlen($tmpstr)< $strlen ) $tmpstr.= "..."; return $tmpstr; } } $str = "abcd需要截取的字符串"; echo cut_str($str, 8, 0, 'gb2312'); ?>
4. BugFree 的字符截取函数
<?php /** * @package BugFree * @version $Id: FunctionsMain.inc.php,v 1.32 2005/09/24 11:38:37 wwccss Exp $ * * * Return part of a string(Enhance the function substr()) * * @author Chunsheng Wang <wwccss@263.net> * @param string $String the string to cut. * @param int $Length the length of returned string. * @param booble $Append whether append "...": false|true * @return string the cutted string. */ function sysSubStr($String,$Length,$Append = false) { if (strlen($String) < = $Length ) { return $String; } else { $I = 0; while ($I < $Length) { $StringTMP = substr($String,$I,1); if ( ord($StringTMP) >=224 ) { $StringTMP = substr($String,$I,3); $I = $I + 3; } elseif( ord($StringTMP) >=192 ) { $StringTMP = substr($String,$I,2); $I = $I + 2; } else { $I = $I + 1; } $StringLast[] = $StringTMP; } $StringLast = implode("",$StringLast); if($Append) { $StringLast .= "..."; } return $StringLast; } } $String = "CodeBit.cn -- 简单、精彩、通用"; $Length = "18"; $Append = false; echo sysSubStr($String,$Length,$Append); ?>
发表评论
-
class and inheritance
2014-05-21 11:53 796class and inheritance class ... -
php获取远程图片并下载保存到本地
2014-05-16 06:02 1021/* *功能:php完美实现下载远程图片保存到本地 * ... -
睡(税)后工资
2014-05-15 06:16 719转载:http://www.oschina.net/code/ ... -
十进制转二进制
2014-05-10 23:31 792function dec2bin ($dec) { ... -
上海盛大 PHP工程师 面试题
2011-03-11 08:05 2351来源:http://www.iteye.com/topic/8 ... -
网页对象内容自动换行控制方法
2011-03-09 08:01 1341网页对象内容自动换行控制方法 对于div,p等块级元素 ... -
CSS之自动换行
2011-03-09 07:58 1140关键字:迅雷 Google Baidu ... -
块级元素和级联元素的含义
2011-03-09 07:56 1107Block element 块级元素 顾 ... -
text-indent无效的几个原因及解决方案
2011-03-09 07:52 3728text-indent是用来字符缩进的。我们通常用在段 ... -
CSS自动换行
2011-03-09 07:48 1194这样的一个表: <table width="1 ... -
[转]Html中添加.wmv视频文件-Windows Media Player
2011-02-14 22:47 1764From: http://hi.baidu.com/ny_ds ... -
MIME 类型大全
2011-02-08 23:17 1803From http://www.webmaster-toolk ... -
【翻译】Video Upload MIME types(视频上传MIME类型)
2011-02-08 08:10 1803From http://www.htmlforums.com/ ... -
重启 HTTPD WEB服务器
2011-02-08 07:59 2279第一次知道用 httpd 也可以做 PHP的服务器(估 ... -
【转】两种PHP上传文件大小限制解决方案
2011-02-08 07:52 1783From:http://www.soft6.com/t ... -
【翻译】PHP中 文字编码变换时 使用SJIS-win而非SJIS,使用eucJP-win而非EUC-JP
2011-02-02 07:57 2694使用SJIS-win而非SJIS,使用eucJP-win而非E ... -
【翻译】用PHP取得字符串的长度(strlen,mb_strlen)
2011-02-02 07:05 2118取得字符串的长度。 strlen int strlen( ... -
[转载]PHP操作oracle数据库指南
2011-01-28 08:14 1620From:http://www.pcppc.cn/bianch ... -
PHP100视频教程27:PHP模板引擎Smarty入门使用
2009-07-05 20:57 1621PHP100视频教程27:PHP模板引擎Smarty入门使用 ... -
PHP100视频教程26:制作自己的PHP+MYSQL的类
2009-07-05 17:38 15601、巩固学习常用MYSQL函数 2、使用类封装常用SQL操 ...
相关推荐
SQL截取字符串函数(1、截取从字符串左边开始N个字符 2、截取从字符串右边开始N个字符(例如取字符www.163.com) 3、截取字符串中任意位置及长度 等等)
string常用截取字符串方法有很多,但是配合使用以下两种,基本都能满足要求: find(string strSub, npos); find_last_of(string strSub, npos); 其中strSub是需要寻找的子字符串,npos为查找起始位置。找到返回子...
oracle,按特定字符,截取字符串,直接出结果 oracle,按特定字符,截取字符串,直接出结果oracle,按特定字符,截取字符串,直接出结果
C# 按照字节长度截取字符串,可以截取任意字节长度得字符串,使用了一点正则表达式。
bat截取字符串
js截取字符串常用的方法很多,你知道多少呢?看看String和StringBuffer如何截取字符串的
这个小demo是截取字符串的,有2个代码,还有取消字符串中的空格,可以看看。
substring截取字符串 substring截取字符串 substring截取字符串 substring截取字符串 substring截取字符串 substring截取字符串 substring截取字符串 substring截取字符串 substring截取字符串 substring截取字符串 ...
适合刚刚进入(JavaScript,Vue)编程领域的小白使用
一个php截取指定字符串之间的字符串的类,介绍一个php截取指定字符串之间的字符串的类,需要的朋友可以自行下载学习使用。
ASP截取字符串(既:利用asp代码控制字符的显示)
CString截取字符串全攻略 - fox的日志 - 网易博客.mht
C#经常用到的几个截取字符串1 取字符串的前i个字符2 去掉字符串的前i个字符:3 从右边开始取i个字符:
vb asp中根据符号截取字符串方法 split (",")
php通用截取字符串
asp.net截取字符串方法 使用字节精确计算 计算空格 直接复制使用 简单
js截取字符串函数.txt
自己输入一个字符串,字符串中可以包括字符和汉字,截取指定的字符串
delphi 实现截取字符串中中文+英文混合截取,当字符串中包含中文和英文支付时,有时候会将一个中文截取1半,出现乱码。该demo能很好的解决该问题
Java精确截取字符串