js正则表达式的match test exec replace函数

js正则表达式的方法:一种正则在前,一种正则在后:

使用:

1.exec

var res = /\-[a-z]/g .exec("font-size");

console.log(res);

得到的结果:

所以返回的是一个数组,第一个为匹配值,第二个是匹配的位置,第三个是输入的数

2.test

var res = /\-[a-z]/g .test("font-size");
console.log(res);

返回为一个布尔值

3.match

var res =("font-size-style").match( /\-[a-z]/g );console.log(res);

返回为匹配到的值

4.replace

("font-size-style").replace( /\-[a-z]/g ,function(a,b,c){
console.log(a);
console.log(b);
console.log(c);
});

返回的a为匹配值,b为索引值,C为输入值;当有多个值的时候,如上图,是一组循环,这种非常适合匹配多值

replace常用来匹配全局,匹配首字母


参考链接:https://www.w3cschool.cn/regexp/m2ez1pqk.html  (W3Cschool)

时间: 2024-10-14 00:59:03

js正则表达式的match test exec replace函数的相关文章

正则表达式之match与exec[转的楼兰之风的]

彻底领悟javascript中的exec与match方法 阅读本文之前,请先看下面一道题: 题目17:Read the following javascript code: var someText="web2.0 .net2.0";var pattern=/(\w+)(\d)\.(\d)/g;var outCome_exec=pattern.exec(someText);var outCome_matc=someText.match(pattern); What is outCome

js 正则表达式 test match exec三个方法的异同

方法 match exec test 调用方法 str.match(reg) reg.exec(str) reg.test(str) 说明 如果正则式为全局匹配,则返回所有匹配的字符串,但是当有子表达式时,不匹配子表达式,只执行全局匹配 如果正则式为全局匹配,只返回存在的第一个匹配结果,但是当有子表达式时,返回值不仅有全局匹配,还匹配子表达式 在使用 "g" 参数时,exec() 的工作原理如下: 找到第一个 "e",并存储其位置 如果再次运行 exec(),则从存

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

1.正则表达式test方法 test() 方法用于检测一个字符串是否匹配某个模式 返回值: 如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false. 2.正则表达式exec方法 exec() 方法用于检索字符串中的正则表达式的匹配. 返回值:返回一个数组,其中存放匹配的结果.如果未找到匹配,则返回值为 null. 3.字符串search方法 search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串. 返回值

js字符串和正则表达式中的match、replace、exec等函数详解

正则并不是经常使用,而正则和字符串之间的函数关系又错综复杂,谁是谁的函数,又是怎么样的一种结果,往往我们是看一遍忘一遍,对此我是头疼不已,感觉自己是个笨蛋^_^. 为了以后不再查文档,特此把常用的函数和功能,简明扼要的罗列在此,以备日后查看: RegExp对象的函数常用的有2个 1.test函数 用法:RegExpObject.test(string) 返回:如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false. 描述:这个方法没有什么

全面解析JS字符串和正则表达式中的match、replace、exec等函数

转自:https://www.jb51.net/article/87730.htm 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串.将匹配的子串做替换或者从某个串中取出符合某个条件的子串等. 正则表达式由于不经常使用,所以容易经常忘记,下面小编把常用的函数和功能,简明扼要的罗列在此,以备日后查看: RegExp对象的函数常用的有2个 1.test函数 用法:RegExpObject.test(string) 返回:如果字符串 st

js正则函数match、exec、test、search、replace、split使用介绍集合

原文 http://www.jb51.net/article/28007.htm js正则函数match.exec.test.search.replace.split使用介绍集合,学习正则表达式的朋友可以参考下. match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对象或字符串文字. rgExp 必选项.为包含正则表达式模式和可用标志的正则表达式对象.

Js 利用正则表达式和replace函数获取string中所有被匹配到的文本

js的replace函数除了替换文本以外还有获取所有被正则表达式匹配到的文本的功能.这里以一个简单的案例来作为演示. 利用正则查找出所有被两个花括号包裹的字符串: var str = <div class="item">{{test}}{{aaa}}{{bbb}}</div> str.replace(reg,function (match,param,offset,string) { console.log(match,param,offset,string);

js正则表达式replace里有变量的解决方法用到RegExp类

一直比较害怕使用正则表达式,貌似很深奥很复杂的样子,所以在用js操作字符串的时候,我最多使用的是replace.split.substring.indexOf等函数,这些函数有时候需要多次叠加使用,但是用起来比较简单,语法和书写格式比较容易记住,所以使用率是相当高的. 今天在操作一段字符串时,需要揪出字符串里的一个数字,虽然用split.substring.indexOf这几个函数的结合使用能实现,但是如果用下正则表达式,则效果好很多,正则表达式的最大作用不就是匹配吗?于是尝试使用正则表达式来编

正则表达式 match 和 exec 比较

match 和 exec 主要有两点不同: 1.exec是正则表达式的方法,而不是字符串的方法,它的参数才是字符串,如下所示: var re=new RegExp(/\d/); re.exec( "abc4def" ); 或者使用perl风格: /\d/.exec( "abc4def" ); match才是字符串类提供的方法,它的参数是正则表达式对象,如下用法是正确的: "abc4def".match(\d); 或者 "abc4def&