JS使用正则截取两个字符串之间的字符串实现方法详解


Posted in Javascript onJanuary 06, 2017

本文实例讲述了JS使用正则截取两个字符串之间的字符串方法。分享给大家供大家参考,具体如下:

一个最常用的场景 截取两个字符串中间的字符串

var str = "iid0000ffr";
var substr = str.match(/id(\S*)ff/);
alert(substr2);

你会发现逗号后面是你要的东西

/S*表示多个字符串

为什么想要的东西在逗号后,也就是数组第二个.

是因为match的返回数组,第一个表示匹配的字符串,这里是包括id ff的,结果是id0000ff

第二个是子正则表达式,什么是子正则表达式,()里面的内容就是子正则表达式,就是指\s*,这才是我们要的东西

我们还可以写复杂点,

var substr = str.match(/ab\S*d(\S*)ff/);

这个表示以ab开始d结尾的字符串 同ff字符串之间的字符串

其实,在高级语言里,我们会用一个叫数量词的概念

就是 (?=abc) 这表示以abc结尾的前面的字符串,但不包括abc

var str = "iid0000ffr";
var substr = str.match(/(\S*)(?=ff)/);
alert(substr2);

但你不能直接写

var substr = str.match(/(?=ff)/);

因为它只管逻辑,但不会输出.

这种东西叫 正向肯定预查 ,就是查***前面的字符串,很多高级语言里面还有叫"反向肯定预查",就是叫***后面的字符串,一般是这样写

?<=abc

不过可怜js不支持

Javascript 相关文章推荐
5款Javascript颜色选择器
Oct 25 Javascript
extjs4 treepanel动态改变行高度示例
Dec 17 Javascript
JavaScript常用脚本汇总(二)
Mar 04 Javascript
jQuery实现浮动层随浏览器滚动条滚动的方法
Sep 22 Javascript
node.js学习之base64编码解码
Oct 21 Javascript
bootstrap导航条实现代码
Dec 28 Javascript
jQuery插件JWPlayer视频播放器用法实例分析
Jan 11 Javascript
bootstrap daterangepicker双日历时间段选择控件详解
Jun 15 Javascript
vue单页面实现当前页面刷新或跳转时提示保存
Nov 02 Javascript
Vue 实现点击空白处隐藏某节点的三种方式(指令、普通、遮罩)
Oct 23 Javascript
Vue通过for循环随机生成不同的颜色或随机数的实例
Nov 09 Javascript
package.json中homepage属性的作用详解
Mar 11 Javascript
jQuery EasyUi 验证功能实例解析
Jan 06 #Javascript
jQuery编写网页版2048小游戏
Jan 06 #Javascript
利用JQuery实现datatables插件的增加和删除行功能
Jan 06 #Javascript
javascript正则表达式模糊匹配IP地址功能示例
Jan 06 #Javascript
bootstrap导航栏、下拉菜单、表单的简单应用实例解析
Jan 06 #Javascript
使用BootStrap进行轮播图的制作
Jan 06 #Javascript
BootStrap便签页的简单应用
Jan 06 #Javascript
You might like
2020最新CPU的性能排名
2020/04/02 数码科技
PHP 和 MySQL 开发的 8 个技巧
2007/01/02 PHP
DISCUZ 论坛管理员密码忘记的解决方法
2009/05/14 PHP
PHP连接MySQL的2种方法小结以及防止乱码
2014/03/11 PHP
简单谈谈php中的unicode和utf8编码
2015/06/10 PHP
ThinkPHP5 验证器的具体使用
2018/05/31 PHP
javascript URL锚点取值方法
2009/02/25 Javascript
基于jquery实现状态限定编辑的代码
2012/02/11 Javascript
js nextSibling属性和previousSibling属性概述及使用注意
2013/02/16 Javascript
表格单元格交错着色实现思路及代码
2013/04/01 Javascript
用JQuery 判断某个属性是否存在hasAttr的解决方法
2013/04/26 Javascript
jQuery如何实现点击页面获得当前点击元素的id或其他信息
2014/01/09 Javascript
完美兼容各大浏览器获取HTTP_REFERER方法总结
2014/06/24 Javascript
javascript实现网页端解压并查看zip文件
2015/12/15 Javascript
Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面
2016/07/01 Javascript
nodejs基于express实现文件上传的方法
2018/03/19 NodeJs
浅谈React之状态(State)
2018/09/19 Javascript
[01:08:09]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第二局
2016/03/02 DOTA
[19:26]TNC vs EG (BO3)
2018/06/07 DOTA
python关键字and和or用法实例
2015/05/28 Python
基础的十进制按位运算总结与在Python中的计算示例
2016/06/28 Python
Python中xrange与yield的用法实例分析
2017/12/26 Python
详解Python中的动态属性和特性
2018/04/07 Python
Django框架使用mysql视图操作示例
2019/05/15 Python
python检测服务器端口代码实例
2019/08/31 Python
Python openpyxl读取单元格字体颜色过程解析
2019/09/03 Python
Python3.x+pyqtgraph实现数据可视化教程
2020/03/14 Python
用python制作个音乐下载器
2021/01/30 Python
详解Html5 Canvas画线有毛边解决方法
2018/03/01 HTML / CSS
推荐WEB开发者最佳HTML5和CSS3代码生成器
2015/11/24 HTML / CSS
kmart凯马特官网:美国最大的打折零售商和全球最大的批发商之一
2016/11/17 全球购物
MVC的各个部分都有那些技术来实现?如何实现?
2016/04/21 面试题
班班通项目实施方案
2014/02/25 职场文书
教师党的群众路线学习心得体会
2014/11/04 职场文书
2015年煤矿安全工作总结
2015/05/23 职场文书
班干部学习委员竞选稿
2015/11/20 职场文书