位置: 编程技术 - 正文

javascript的正则匹配方法学习(js正则 \w)

编辑:rootadmin

推荐整理分享javascript的正则匹配方法学习(js正则 \w),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js正则怎么用,js正则用法,js 正则 g,js 正则 g,javascript 正则,js的正则函数,js正则用法,javascript 正则,内容如对您有帮助,希望把文章链接给更多的朋友!

javascript中正则匹配有3个方法,match,exec,test。这些方法都跟字符串和RegExp对象有关,但使用场景不一样,容易混淆。match是字符串的一个方法,接收一个RegExp对象做为参数,其他的是RegExp对象的方法,接收一个字符串参数。

1. regExp.test(string)

  该方法最简单,在string中找到匹配regExp的字符串则返回true,没找到匹配的字符串则返回false

2. regExp.exec(string)

  该方法稍微复杂些。

javascript的正则匹配方法学习(js正则 \w)

  当regExp没有全局标志时,其返回值为字符串数组:数组的第0号元素为刚匹配到的字符串,如果regExp有子表达式,则数组第1号元素为regExp的第一个子表达式,第2号元素为regExp的第二个字表达式...以此类推。在上例中如果 patt = new RegExp('f(\d)(\d)','g');则 ret_exec 将为字符串数组:['f','1','2']。

  当regExp有全局标志(g选项)时,返回值为第一个匹配到的字符串组成的数组,数组的第0号元素为刚匹配到的字符串,如果regExp有子表达式,则数组第1号元素为regExp的第一个子表达式,第2号元素为regExp的第二个字表达式...以此类推。同时主意,regExp对象的一个属性(lastIndex)被改变了,lastIndex被设置为那个字符串最后一个字符所在的位置,其的后面的那个位置(在上例中是lastIndex = 2)。当再次调用 regExp.exec(string)时,搜索范围将从regExp.lastIndex开始搜索。此时返回值仍然是单元素的字符串数组,lastIndex = 。我们经常用while循环来遍历字符串中的匹配:

  exec方法返回的不是标准的数组,应该算是一个类数组,因为它还有2个属性:input是输入的字符串,index是当前匹配的字符串第一个字符在input中的位置。

3. string.match(regExp)

  该方法比exec简单一些,因为它不用考虑regExp的lastIndex属性。同样,也需要分两种情况(全局匹配与非全局匹配)

  当regExp没有全局标志时,返回值与调用exec一样,返回一个数组,数组的第0号元素为刚匹配到的字符串,如果regExp有子表达式,则数组第1号元素为regExp的第一个子表达式,第2号元素为regExp的第二个字表达式...以此类推。主意该数组同时还有2个属性:input是输入的字符串string,index是当前匹配的字符串第一个字符在input中的位置。

  当regExp有全局标志(g选项)时,很简单,也符合我们的理解:返回所有匹配到的字符串组成的数组。这是标准数组,没有input属性,也没有index属性。返回值数组中除了匹配到的字符串没有任何其他信息。

  从上面的分析看出,如果你只是想判断字符串是否匹配某个正则表达式,就用test方法。如果想一次性取出所有匹配到的字符串,或者只找到第一个匹配的字符串就可以,就用match方法。如果你想多次匹配,而且需要知道每个匹配到的字符串在原始字符串中的位置,或者正则表达式中还有子表达式信息需要关注,就用exec方法。

标签: js正则 \w

本文链接地址:https://www.jiuchutong.com/biancheng/380344.html 转载请保留说明!

上一篇:适用于javascript开发者的Processing.js入门教程(适用于分析原因的工具有哪些)

下一篇:javascript cookie的简单应用(javascript中cookie)

  • 税金返还需要交税吗
  • 递延所得税负债计算公式
  • 消费税到底是什么
  • 进项税额不允许抵扣怎么计算
  • 银行存款日记账电子表格模板
  • 税务局未核定的印花税
  • 融资租出的设备计入什么科目
  • 个人转让土地使用权
  • 出口退税不退税主要适用于
  • 农业免税企业账户怎么查
  • 其他公司归还货款会计分录
  • 当期发生的费用
  • 公司出售自用汽车如何开票
  • 事业单位属于一级单位吗
  • 企业试生产期间发生的费用怎么入账
  • 安装属于劳务报酬吗
  • 对公给个人转账可以写成什么
  • 分公司筹备方案
  • 成本费用总额包括所得税费用吗
  • 新公司税控盘购买流程
  • 股东分红是看未交税吗
  • 货款已经收到
  • 企业与企业之间进行的电子商务模式是
  • redis使用php
  • 入库的原材料属于什么科目
  • 公司法人向公司借款未还,公司可以倒闭吗
  • mac如何在桌面显示我的电脑
  • php vr
  • 工会捐款计入什么科目
  • 企业所得税汇算表
  • 受赠与获赠的区别
  • 职工薪酬纳税调整明细表怎么填写
  • 什么是非征期税未报
  • php时间函数用法代码
  • 新必应申请使用资格
  • 什么是多模态研究
  • ssh命令用法
  • json有几种基本结构
  • 建筑装饰工程公司属于什么行业
  • 没有校验码的发票可以报销吗
  • 帝国cms模板文件放在哪里
  • python2.7 协程
  • sql server附加数据库出错
  • 材料采购成本计算表
  • 营业执照增加经营范围要钱吗
  • 盘盈固定资产如何处理
  • 对方开给我的专票,我要报税吗?
  • 房租押金可以要回来吗
  • 固定资产入账及计提折旧
  • sql查询语句大全实例教程
  • 材料发票税额
  • 员工垫付款报销单
  • 相同的商品附带不同的赠品发布
  • 低值易耗工具有哪些
  • 公司股权作价转让会计分录案例
  • 减免增值税后附加怎么算
  • 财务费用手续费借贷方向
  • 中标违约保证金怎么退
  • 已认证专票发现地址为错误
  • 企业的财务战略
  • mysql启动时报1067
  • centos安装软件教程
  • ubuntu sshserver
  • win10升级100完成不动
  • 安装网络设备
  • WIN10系统打开IE浏览器断网
  • dw导入excel
  • android su
  • c opengl
  • js中的三种弹出式消息提醒的命令是什么
  • Knockout visible绑定使用方法
  • jQuery实现的AJAX简单弹出层效果代码
  • css中层叠的含义
  • node.js操作数据库报错不再队列中
  • python如何处理文本
  • 安装配置jsp运行环境
  • adb命令ls
  • 捐赠收费吗
  • 山东国家税务局许本虎
  • 精准扶贫的实践与探索经验
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设