这四种方法都是用来检测字符串是否包含某一子串或是否匹配否个正则表达式

test方法,匹配返回true,不匹配返回false

match,匹配返回匹配到的数组(包含多次/g),匹配一次返回包含匹配子串的数组,具体看下面例子,没有匹配到返回null

replace,查找替换,两个参数,第一个参数查找的内容,可以是字符串或正则表达式,第二个参数(字符串,$1...$10,函数),用第二个参数替换第一个参数

exec,匹配返回匹配值,不匹配返回null

var str='aa-bb-cc'
var reg=/\w{2}/g
var reg2=/\w{3}/g reg.test(str) //true
reg2.test(str) //false

str.match(reg) // (3) ["aa", "bb", "cc"]
str.match(/\w{2}/) //["aa", index: 0, input: "aa-bb-cc", groups: undefined] 一次匹配
str.match(reg2) //null

reg.exec(str) //["aa", index: 0, input: "aa-bb-cc", groups: undefined]
reg2.exec(str) //null

// 用replace实现首字母大写
str.replace(/(^\w|\-\w)/g,function($1){return $1.toUpperCase()}) //"Aa-Bb-Cc"

一定要亲自试验一下  可以很快理解

test,exec,match,replace方法区别 正则的更多相关文章

  1. JS理论--正则表达式RegExp的创建、元字符、优先度、方法(test(),exec(),match(),replace())

    实战,参数可以对照上面的,代码一定要敲 var str = 'abc123cba456aaa789'; var reg = /\d+/g; console.log(reg.test(str)) //s ...

  2. [ JS 进阶 ] test, exec, match, replace

    https://segmentfault.com/a/1190000003497780 对了,这篇文章可能会涉及到正则表达式相关知识,所以推荐没有正则基础的去看看这篇入门文章:正则表达式30分钟入门教 ...

  3. js通过replace()方法配合正则去除空格

    <script> //去掉全部空格 var str = " 546546 4564 46 46 88 88 "; var str = str.replace(/\s+/ ...

  4. js正则表达式中test,exec,match方法的区别说明

    js正则表达式中test,exec,match方法的区别说明 test test 返回 Boolean,查找对应的字符串中是否存在模式.var str = "1a1b1c";var ...

  5. js正则表达式中test,exec,match方法的区别

    test test 返回 Boolean,查找对应的字符串中是否存在模式.var str = "1a1b1c";var reg = new RegExp("1." ...

  6. JavaScript中正则表达式test()、exec()、match() 方法区别

    1.test test 返回 Boolean,查找对应的字符串中是否存在模式.var str = "1a1b1c";var reg = new RegExp("1.&qu ...

  7. javascript中正则表达式中的 match,exec,test,replace 之我理解

    这个正则 ($&) 的语法: https://msdn.microsoft.com/library/3k9c4a32(v=vs.94).aspx 在ECMAScript中对这几个的说明: ma ...

  8. Js正则Replace方法

    JS正则的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\s+)|(\s+$)" ...

  9. js正则表达式test方法、exec方法与字符串search方法区别

    1.正则表达式test方法 test() 方法用于检测一个字符串是否匹配某个模式 返回值: 如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 fal ...

随机推荐

  1. centos上安装zookeeper

    下载zookeeper # 创建zookeeper文件夹 cd /usr/local/ mkdir zookeeper cd zookeeper # 下载 解压 wget https://mirror ...

  2. leaflet 的 marker 弹框 iframe 嵌套代码

    A页面 嵌套 B页面的代码 主要处理  leaflet 的 marker 的 popopen,     marker的点击的显示/隐藏 pop   会导致pop中的页面的内容,消失,不在页面中,导致b ...

  3. msql中@RequestParam、@Param、@PathVariable的用法

    @RequestParam的用法 1.可以对传入参数指定参数名,将请求参数绑定至方法参数 // 下面的对传入参数指定为aa,如果前端不传aa参数名,会报错 @RequestParam(value=&q ...

  4. 如何使用Git建立本地仓库并上传代码到GitHub

    使用Git建立本地仓库并上传代码到GitHub 工具/原料   电脑安装git客户端.注册github账号并登陆 方法/步骤     到本地项目文件夹右键选择git bash here   输入个人信 ...

  5. 异步编程之APM

    一.APM概述 APM即异步编程模型的简写(Asynchronous Programming Model),我们平时经常会遇到类似BeginXXX和EndXXX的方法,我们在使用这些方法的时候,其实就 ...

  6. qt 中的对象树

    本节内容讲解了什么是对象树以及其所带来的 GUI 编程好处.最后说明了在对象树中析构顺序问题并举了个特殊的例子,来说明平时编程中需要注意的一个点. 什么是对象树? 我们常常听到 QObject 会用对 ...

  7. 玩转Spring生命周期之Lifecycle

    Lifecycle callbacks Initialization callbacks.Destruction callbacks要与容器的bean生命周期管理交互,即容器在启动后和容器在销毁前对每 ...

  8. java实现全排列输出

    java实现全排列输出 转自:http://easonfans.iteye.com/blog/517286 最近在找工作,面试java程序员或者软件工程师,在笔试的时候常常见到这么一道题:全排列 的输 ...

  9. Buffer和Cache的异同

    Buffer的本质是缓冲,常见实例如下面这个: 对,就是铁道端头那个巨大的弹簧一类的东西.作用是万一车没停住(是没停住啊,刹车了但是差一点没刹住那种,不是不拉刹直接撞上来),撞弹簧上减速降低危险,起到 ...

  10. Android WorkManager 定时任务

    App有时可能需要定期运行某些工作.例如,可能要定期备份数据.上传信息到服务器,定期获取新的内容等等. 在app运行期间,我们使用Handler也可以完成定期的功能.在这里我们介绍WorkManage ...