JS PHP字符串截取函数实现原理解析


Posted in Javascript onAugust 29, 2020

js有三个:slice() substring() substr()

一般都用substr(start,length),第一个参数是开始位置的下标 必须,可以为负数,下标-1 是指字符串中最后一个字符,下标-2 是指倒数第二个字符,以此类推;第二个参数是要截取子串的长度 可选,截取的方向都是从左往右,不会改变。

截取出来的子串包含起始位置自己

PS:字符串的索引都从0开始计起

. 空格都是字符

substring(from,until) slice(from,until)都是从一个索引截取到另一个索引,只有当参数为负数时,他们不一样,需要强调的一点:子串不包括“until”索引值的元素

substring(0) slice(0) slice()都是截取整个字符串,无意义

substring的from必写

php:

1.substr(源字符串,起始位置,[长度])-截取字符串返回部分字符串

<?php
$str ="phpddt.com";
echo substr($str,2);//pddt.com
echo substr($str,2,3);//pdd
echo substr($str,-2);//om 负数从结尾开始取
?>

但是当你截取中文字符串的时候很容易出现乱码,因为一个汉字是两个字节,而一个英文字母是一个字节。解决办法如下:

2.mb_substr(),使用方法和substr相同

不过要开启php.ini里面extension=php_mbstring.dll扩展,不用担心,一般的空间商都会开启这个扩展的。

<?php
echo mb_substr("php点点通",1,3,"UTF-8");//hp点
?>

代码如下:

substr(string,start,length)

  • 其中start的参数
  • 正数 - 在字符串的指定位置开始
  • 负数 - 在从字符串结尾的指定位置开始
  • 0 - 在字符串中的第一个字符处开始

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS效率个人经验谈(8-15更新),加入range技巧
Jan 09 Javascript
什么是Node.js?Node.js详细介绍
Jun 01 Javascript
jQuery实现跨域
Feb 03 Javascript
JS使用eval()动态创建变量的方法
Jun 03 Javascript
实用jquery操作表单元素的简单代码
Jul 04 Javascript
AngularJS表单和输入验证实例
Nov 02 Javascript
angularjs实现上拉加载和下拉刷新数据功能
Jun 12 Javascript
AngularJS 最常用的八种功能(基础知识)
Jun 26 Javascript
谈谈VUE种methods watch和compute的区别和联系
Aug 01 Javascript
vue页面切换过渡transition效果
Oct 08 Javascript
Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网
May 16 Javascript
Vue项目开发常见问题和解决方案总结
Sep 11 Javascript
JS访问对象两种方式区别解析
Aug 29 #Javascript
js在HTML的三种引用方式详解
Aug 29 #Javascript
toString.call()通用的判断数据类型方法示例
Aug 28 #Javascript
你不知道的 TypeScript 高级类型(小结)
Aug 28 #Javascript
js和jquery判断数据类型的4种方法总结
Aug 28 #jQuery
Node在Controller层进行数据校验的过程详解
Aug 28 #Javascript
Postman无法正常返回结果问题解决
Aug 28 #Javascript
You might like
php天翼开放平台短信发送接口实现方法
2014/12/22 PHP
php读取flash文件高宽帧数背景颜色的方法
2015/01/06 PHP
PHP 获取指定地区的天气实例代码
2017/02/08 PHP
javascript生成/解析dom的CDATA类型的字段的代码
2007/04/22 Javascript
OfflineSave离线保存代码再次发布使用说明
2007/05/23 Javascript
jQuery 核心函数以及jQuery对象
2010/03/23 Javascript
Javascript学习笔记二 之 变量
2010/12/15 Javascript
javascript获取当前日期时间及其它操作函数
2011/01/11 Javascript
Raphael带文本标签可拖动的图形实现代码
2013/02/20 Javascript
JavaScript实现的日期控件具体代码
2013/11/18 Javascript
jQuery选择器简明总结(含用法实例,一目了然)
2014/04/25 Javascript
Jquery数字上下滚动动态切换插件
2015/08/08 Javascript
Javascript继承机制详解
2017/05/30 Javascript
webpack 2.x配置reactjs基本开发环境详解
2017/08/08 Javascript
基于vue实现可搜索下拉框定制组件
2020/03/26 Javascript
CKEditor4配置与开发详细中文说明文档
2018/10/08 Javascript
JavaScript设计模式之代理模式实例分析
2019/01/16 Javascript
简单了解JavaScript sort方法
2019/11/25 Javascript
Vue实现图书管理小案例
2020/12/03 Vue.js
Python正则替换字符串函数re.sub用法示例
2017/01/19 Python
详解Python中is和==的区别
2019/03/21 Python
Python中的上下文管理器相关知识详解
2019/09/19 Python
浅谈Python中re.match()和re.search()的使用及区别
2020/04/14 Python
mac安装python3后使用pip和pip3的区别说明
2020/09/01 Python
详解如何修改jupyter notebook的默认目录和默认浏览器
2021/01/24 Python
英国在线定做百叶窗网站:Make My Blinds
2020/08/17 全球购物
简历的个人自我评价范文
2014/01/03 职场文书
新员工入职感言
2014/02/01 职场文书
社区庆八一活动方案
2014/02/02 职场文书
教师节促销方案
2014/03/22 职场文书
小学生学习雷锋倡议书
2014/05/15 职场文书
酒店开业策划方案
2014/06/02 职场文书
2014幼儿园教育教学工作总结
2014/12/17 职场文书
2016年“世界环境日”校园广播稿
2015/12/18 职场文书
大学生就业指导课心得体会
2016/01/15 职场文书
python基础之模块的导入
2021/10/24 Python