JS RegExp对象

作者: WEB_克克 | 来源:发表于2017-10-10 17:22 被阅读31次

new RegExp对象用于在字符串中查找你想查找的内容

new RegExp可以接受两个参数,第一个参数是字符串或者是表达式,第二个参数是可选的,规定用什么方式去匹配,比如new RegExp('hello','g') 全局匹配

test()方法 ——— 查找指定的内容

var content = 'Hello';   //定义一个字符串
var reg = new RegExp('e');  //定义RegExp要查找的内容 e
//var reg = /e/;   简易写法,表达式的方式
reg.test(content);  //得到true   用RegExp的test方法去检测 content的这个字符串里有没有e这个字符,如果有返回true,否则返回false。

exec()方法———查找指定的值,如果有就返回指定的值,没有就返回null

var content = 'Hello';   //定义一个字符串
var reg = new RegExp('o');  //定义RegExp要查找的内容 o
var result = reg.exec(content)  //得到 ["o", index: 4, input: "Hello"]
document.write(result);  // 可以直接得到 o
获取值:
result[0] 得到 o
result.index  得到4,4代表索引位置
result.input 得到  Hello。

compile() ——— 用于替换要查找的内容

    var content = 'Hello';  
    var reg = new RegExp('o');  
    reg.compile('h') //把 o 替换成 l
    var result = reg.test(content)  // true

|

JsvaScript match()

语法: str.match()
作用:在字符串中查找指定的值,如果没找到返回null,如果找到返回指定得值,有两种情况

1. 表达式后面不加修饰参数
     var str = "hello"; 
     str.match(/e/); //["e", index: 1, input: "hello"]  数组里有匹配到的e,也有e出现的位置。

2. 表达式后面增加修饰参数 g, 表示全局搜索
    var str="hello world"; 
    str.match(/o/g);   // ["o", "o"]  检索到2个o 

JavaScript search()

语法:str.search
作用:检索指定的值在字符串中出现的位置,如果没找到就返回-1, 和 indexOf()方法类似,

var str="hello 123"
str.search(/\d/)  // 6  匹配数字出现的位置 
str.search(/o/)  // 4  匹配 o
"hello 123".indexOf('1')  //6

JavaScript replace()

语法:str.replace()
作用:查找并且替换内容(替换字符串中所有匹配到的内容)

var str = 'hello world hello world'
str.replace('hello', 'world') //  world world hello world      替换一个hello
str.replace(/hello/g, 'world') // world world world world  替换全局hello
//第一个参数可是是正则表达式
//第二个参数要替换成什么内容

W3C标准解释

修饰符

i
执行对大小写不敏感的匹配。

g
执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

m
执行多行匹配。

方括号用于查找某个范围内的字符:

[abc]
查找方括号之间的任何字符。

[^abc]
查找任何不在方括号之间的字符。

[0-9]
查找任何从 0 至 9 的数字。

[a-z]
查找任何从小写 a 到小写 z 的字符。

[A-Z]
查找任何从大写 A 到大写 Z 的字符。

[A-z]
查找任何从大写 A 到小写 z 的字符。

[adgk]
查找给定集合内的任何字符。

[^adgk]
查找给定集合外的任何字符。

(red|blue|green)
查找任何指定的选项。

元字符(Metacharacter)是拥有特殊含义的字符:

[.]
查找单个字符,除了换行和行结束符。

[\w]
查找单词字符。

[\W]
查找非单词字符。

[\d]
查找数字。

[\D]
查找非数字字符。

[\s]
查找空白字符。

[\S]
查找非空白字符。

[\b]
匹配单词边界。

[\B]
匹配非单词边界。

\0
查找 NUL 字符。

[\n]
查找换行符。

\f
查找换页符。

\r
查找回车符。

\t
查找制表符。

\v
查找垂直制表符。

[\xxx]
查找以八进制数 xxx 规定的字符。

[\xdd]
查找以十六进制数 dd 规定的字符。

[\uxxxx]
查找以十六进制数 xxxx 规定的 Unicode 字符。

相关文章

  • JS正则表达式详解

    RegExp对象实例化 RegExp是JS的正则表达式对象,实例化一个RegExp对象有字面量和构造函数2种方式。...

  • js RegExp对象

    正常我们判断一个字符串是否为指定格式时会想到使用正则表达式来匹配 var patt = /^......$/;使用...

  • JS RegExp对象

    new RegExp对象用于在字符串中查找你想查找的内容 new RegExp可以接受两个参数,第一个参数是字符串...

  • JS RegExp对象

    RegExp对象提供正则表达式的功能。 概述 正则表达式(regular expression)是一种表达文本模式...

  • 正则表达式

    正则表达式图像化工具:www.regexper.com REGEXP对象 JS通过内置对象RegExp支持正则表达...

  • JS内置对象RegExp

    RegExp内置对象 1.创建形式 构造函数 var re = new RegExp('j.*t'); 正则文本标...

  • js笔记---RegExp对象

    正则表达式(regular expression)是一种表达文本模式(即字符串结构)的方法,常常用作按照“给定模式...

  • js内置对象RegExp

    JavaScript中的RegExp对象,就是我们常说的正则表达式对象。该对象主要包含正则表达式模式,以使用正则表...

  • JavaScript的几个高级应用

    正则表达式在JS中的应用 RegExp内置对象详解 MDN-JS-RegExp 中文文档有几个正则符号需要特别注意...

  • 面向对象之继承

    内置对象 js提供的已经定义好的对象 Array,Date,Boolean,RegExp,String,Numbe...

网友评论

    本文标题:JS RegExp对象

    本文链接:https://www.haomeiwen.com/subject/vgwnsxtx.html