首页 > 其他 > 详细

正则表达式学习笔记

时间:2017-03-06 13:56:05      阅读:276      评论:0      收藏:0      [点我收藏+]

正则表达式的写法有两种方式

1.var reg = new RegExp("[a-zA-z]+://[^\s]*");

2.    var reg = /[a-zA-z]+://[^\s]*/   这里可以简单的记为向注释符号//中添加模式,而不是\\

正则表达式的方法:

1.search() 方法 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置

var str = "Visit Runoob!"; var n = str.search(/Runoob/i);  //6

另外:search 方法可使用字符串作为参数。字符串参数会转换为正则表达式

var str = "Visit Runoob!"; var n = str.search("Runoob");

2.replace() 方法 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

var str = "Vistit microsoft!"; var txt = str.replace(/microsoft/i,"Runoob"); // Visit Runoob!

同样replacte()方法仍然可以使用字符串作为参数

3.match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。(这里就要看是不是全局匹配,如果是全局查找,那么如果有多个就会查找到多个;如果不是全局查找的话,最多只有一个)

var str="The rain in SPAIN stays mainly in the plain"; 
var n=str.match(/ain/g);console.log(n);

结果:["ain", "ain", "ain"]

从结果可以看出,当是全局查找时,结果是一个数组,如果不是全局查找时仍然还是一个数组,得出的结果是和exec()方法得出的结果一致的

技术分享

4.test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。需要注意一点的是test()方法的使用方法是reg.test(str) 参数是字符串,和前面三个方法是相反的

var patt = /e/;
patt.test("The best things in life are free!");//true

5.exec() 方法用于检索字符串中的正则表达式的匹配。该函数返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。使用方法和test方法一样

/e/.exec("The best things in life are free!"); //["e", index: 2, input: "The best things in life are free!"] 从结果可以看出只会返回符合结果是一个数组

 

正则表达式学习笔记

原文:http://www.cnblogs.com/fireporsche/p/6509213.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!