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 相关文章推荐
javascript[js]获取url参数的代码
Oct 17 Javascript
javascript 写类方式之八
Jul 05 Javascript
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
Jan 13 Javascript
DWZ table的原生分页浅谈
Mar 01 Javascript
jquery Ajax 实现加载数据前动画效果的示例代码
Feb 07 Javascript
页面按钮禁用与解除禁用的方法
Feb 19 Javascript
Javascript中的getUTCHours()方法使用详解
Jun 10 Javascript
js 获取站点应用名的简单实例
Aug 18 Javascript
原生js实现吸顶效果
Mar 13 Javascript
vue webpack打包优化操作技巧
Feb 22 Javascript
vue中选项卡点击切换且能滑动切换功能的实现代码
Nov 25 Javascript
Layui 解决表格异步调用后台分页的问题
Oct 26 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
用PHP和ACCESS写聊天室(四)
2006/10/09 PHP
PHP 如何获取二维数组中某个key的集合
2014/06/03 PHP
javascript加号&quot;+&quot;的二义性说明
2013/03/04 Javascript
jquery mobile实现拨打电话功能的几种方法
2013/08/05 Javascript
异步动态加载js与css文件的js代码
2013/09/15 Javascript
Javascript 拖拽雏形中的一些问题(逐行分析代码,让你轻松了拖拽的原理)
2015/01/23 Javascript
Javascript中数组方法汇总(推荐)
2015/04/01 Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
2015/12/04 Javascript
jQuery中trigger()与bind()用法分析
2015/12/18 Javascript
用js动态添加html元素,以及属性的简单实例
2016/07/19 Javascript
纯JS实现图片验证码功能并兼容IE6-8(推荐)
2017/04/19 Javascript
Angular.js中上传指令ng-upload的基本使用教程
2017/07/30 Javascript
vue使用laydate时间插件的方法
2018/11/14 Javascript
angular4中引入echarts的方法示例
2019/01/29 Javascript
Vue实现搜索结果高亮显示关键字
2019/05/28 Javascript
详细讲解如何创建, 发布自己的 Vue UI 组件库
2019/05/29 Javascript
浅谈Vue中render中的h箭头函数
2019/11/07 Javascript
ant-design-vue 实现表格内部字段验证功能
2019/12/16 Javascript
Python实现从百度API获取天气的方法
2015/03/11 Python
Python面向对象编程中关于类和方法的学习笔记
2016/06/30 Python
python snownlp情感分析简易demo(分享)
2017/06/04 Python
Python爬虫_城市公交、地铁站点和线路数据采集实例
2018/01/10 Python
python中的内置函数max()和min()及mas()函数的高级用法
2018/03/29 Python
Python3使用SMTP发送带附件邮件
2020/06/16 Python
Python高级特性与几种函数的讲解
2019/03/08 Python
如何基于Python实现电子邮件的发送
2019/12/16 Python
浅谈selenium如何应对网页内容需要鼠标滚动加载的问题
2020/03/14 Python
详解Python的爬虫框架 Scrapy
2020/08/03 Python
梵蒂冈和罗马卡:Omnia Card Pass
2018/02/10 全球购物
同步和异步有何异同,在什么情况下分别使用他们?
2012/12/28 面试题
机电一体化专业求职信
2014/07/22 职场文书
我们的节日元宵节活动总结
2015/02/06 职场文书
污水处理保证书
2015/05/09 职场文书
工作简历的自我评价
2019/05/16 职场文书
该怎么书写道歉信?
2019/07/03 职场文书
【海涛dota解说】DCG联赛第一周 LGD VS DH
2022/04/01 DOTA