js正则表达式

var f = /@/g;

var src="2876110865@qq.com"

console.log(src.match(f));

 

new RegExp(pattern/attributes);

attribute:g(执行全局搜索,直到搜索完毕才结束)

             m(多行匹配)

             i(大小写不敏感)

 

匹配成功返回匹配结果,不成功返回null

pattern

方括号[]:

[anfhf]  , [^anfhf] ,[^a-c],[0-9],[A-Z],[A-z],

[a-c]   //匹配a-c之间的字符   

 var patt = /[a-c]/g;

 var str = "wangshiqiao is a girl"

 var  rel = str.match(patt);

console.log(rel);

 

元字符:

.  (单个字符)

var str = "i am very hot"

var pat = /h.t/g;

var rel = str.match(pat);    

console.log(rel);     //hot

\w(单词字符),\W(非单词字符),\d(数字字符),\D(非数字字符),\s(空格字符),\S(非空格子符),\b(单词边界),\B(非单词边界),\f,\n,\xxx,\n,\r,\xdd,\uxxxx

var src = "i from gansu";

var pat = /g\b..s/g;

console.log(src.match(pat));    //gans

 

量词

n+(至少一个),n*(零个或多个),n?(零个或一个), n{X}  //X是量词 X个,n{X,Y}(X到Y个),n{X,}(至少X个),n$,^n,?=n,?!n

var str="aooo doooo hoofhf kknooo dhdgdnd";

var pat=/o\w{3,4}/g;

console.log(str.match(pat));   //["oooo","oofhf"]

 

属性:

global

ignoreCase

multiline

lastIndex  下一次开始匹配字符的位置

sourrce    匹配源文本

 

RegExp对象的方法:

compile   编译正则表达式

test           检索字符串中指定的值。返回 true 或 false。

exec           检索字符串中指定的值。返回找到的值,并确定其位置。

var src="wangshiqioao id is 10096575";

var pat =/\d{5}/g;

console.log(pat.test(src));

  

匹配字符串的方法

match();    匹配并且返回字符串

search();   检索表达式匹配的值如果 存在返回匹配字符串的位置,不存在返回-1

replace();  替换匹配到的字符串

split();   分割成数组 

 

var str= "i am a person";

var pat = /person/g;

console.log(str.replace(pat,"woman"));

 

var str= "i am a person gdgeg furu hsgsggs s ";

var pat = /[a-c]/g;

console.log(str.split(pat));

 

posted @ 2017-04-17 14:10  wangshiqiao  阅读(175)  评论(0)    收藏  举报