利用php怎么对中英文混合的字符串进行截取

发布时间:2021-01-04 15:31:24

来源:亿速云

阅读:103

作者:Leah

利用php怎么对中英文混合的字符串进行截取?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

php 截取中应为字符串,就不必再用substr或者mb_substr//截取想这样的字符串

a李三

利用ASCII/**

*

* 中英混合的字符串截取

* @param unknown_type $sourcestr

* @param unknown_type $cutlength

*/

function assoc_substr($sourcestr, $cutlength) {

$returnstr = '';

$i = 0;

$n = 0;

$str_length = strlen ( $sourcestr ); //字符串的字节数

while ( ($n

$temp_str = substr ( $sourcestr, $i, 1 );

$ascnum = Ord ( $temp_str ); //得到字符串中第$i位字符的ascii码

if ($ascnum >= 224) {//如果ASCII位高与224,

$returnstr = $returnstr . substr ( $sourcestr, $i, 3 ); //根据UTF-8编码规范,将3个连续的字符计为单个字符

$i = $i + 3; //实际Byte计为3

$n ++; //字串长度计1

} elseif ($ascnum >= 192){ //如果ASCII位高与192,

$returnstr = $returnstr . substr ( $sourcestr, $i, 2 ); //根据UTF-8编码规范,将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 ++; //但考虑整体美观,大写字母计成一个高位字符

}elseif ($ascnum >= 97 && $ascnum <= 122) {

$returnstr = $returnstr . substr ( $sourcestr, $i, 1 );

$i = $i + 1; //实际的Byte数仍计1个

$n ++; //但考虑整体美观,大写字母计成一个高位字符

} else {//其他情况下,半角标点符号,

$returnstr = $returnstr . substr ( $sourcestr, $i, 1 );

$i = $i + 1;

$n = $n + 0.5;

}

}

return $returnstr;

}

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

php对中英文字符串进行截取,利用php怎么对中英文混合的字符串进行截取相关推荐

  1. python转化成字符串_如何利用Python将其他数据类型转换成字符串类型

    Python设计语言中有一类常用的数据类型:字符串数据类型.字符串数据类型定义的变量可以使用双引号或单引号将字符括起来,除了字符串数据类型,还有其他的数据类型,如整型.布尔型.列表.字典.元组.可以将 ...

  2. Mysql截取中英数混合的字符串

    在 mysql中截取字符串我们用 LEFT函数 LEFT(str,len) 返回从字符串str 开始的len 最左字符. mysql> SELECT LEFT('foobarbar', 5); ...

  3. python中英文字符怎么区分-python 利用utf-8编码判断中英文字符的简单示例

    这篇文章主要为大家详细介绍了python 利用utf-8编码判断中英文字符的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣python 利用utf-8编码判断中英文字符的简单示例的小伙伴,下 ...

  4. 中英文混合html加密,JS实现中英文混合文字溢出友好截取功能

    JS实现中英文混合文字溢出友好截取功能 发布时间:2020-08-28 18:21:10 来源:脚本之家 阅读:73 作者:抖音 在显示字符串的时候,避免字符串过长往往会对字符串进行截取操作,通常会用 ...

  5. java截取某两个字符之间的字串_Java截取特定两个标记之间的字符串实例

    Java截取特定两个标记之间的字符串实例 如有一串字符串: higklmnopq java代码如下: public class StringTest { public static void main ...

  6. 中英数字混合的字符串截取

    /*** 中英数字混合的字符串截取* Param: 参数说明* [in]$sourcestr string 截取字符串* [in]$cutlength int 截取长度*/public functio ...

  7. 政策表达式截取json_json格式数据如何提取指定中文字符串。

    本人新手,想编写一个小程序解决工作中的问题,但是在两个地方实际结果及调试结果存在很大差异,百度不得其解,特来请教! 程序的功能很简单,就是把快递单号利用requests提交到快递100的查询网站,然后 ...

  8. groovy 字符串截取最后一个_python数据类型总结——数字和字符串

    如同人有姓名一般,当python中的数据被创建后,会在存储介质中分配一块区域用于存储数据.通常,我们需要一个名字来指代这部分数据.python变量 数据的名字,称之为变量.数据存放在内存空间中,变量持 ...

  9. 利用PhantomJS进行网页截屏,完美解决截取高度的问题

    利用PhantomJS进行网页截屏,完美解决截取高度的问题 参考文章: (1)利用PhantomJS进行网页截屏,完美解决截取高度的问题 (2)https://www.cnblogs.com/jaso ...

最新文章

  1. CSDN粉丝可见回来了!
  2. cordova打包app后发请求出现 Provisional headers are shown的问题
  3. composer搭建php框架,用 Composer构建自己的 PHP 框架之基础准备
  4. mysql类型说明_MYSQL 数据类型说明
  5. Generator执行步骤浅析
  6. 技术女性的是是非非(2)
  7. 你的跨境电商独立站访问性能如何?
  8. Exception in thread http-apr-8080-exec-
  9. 转 Ubuntu16.04+QT4.8.7开发环境搭建
  10. python的基础语法
  11. 无穷积分 ∫sinx/xdx 的几种巧妙解法
  12. kali Linux 工具 BurpSuite-暴力破解
  13. Windows Xp SP3 chs 简体中文版下载
  14. Sigma Function
  15. 前端——14.用HTML做的小练习
  16. mysql安装时的英文_安装MySQL遇到的常见英文翻译
  17. 重新试用了office与wps.感觉这次wps好多了.
  18. MFC 进程间通信(共享内存)
  19. 破解加密文档以及宏口令
  20. 2022年废纸价格预测

热门文章

  1. 使用jmap命令手动导出映像文件?
  2. 解决Linux操作系统下AES解密失败的问题
  3. java执行linux脚本 并返回其执行结果
  4. JavaScript-概述
  5. java list 字段去重_java list 根据对象一个字段去重
  6. BugkuCTF-MISC题Photo的自我
  7. C++的六个默认函数
  8. 机械系统计算机控制试卷及答案,机械系统设计试题及答案
  9. 计算机关机键桌面,电脑桌面按钮关机关不了怎么办? 爱问知识人
  10. 安全扫描失败无法上传_Apache Solr 未授权上传(RCE)漏洞的原理分析与验证