javascript笔记之正则表达式

1.在js正则表达式特殊的需要转义的字符有:

 


 ^ $ . * + ?  = ! : | \ / ( ) [ ] { }

但实际应用中,还要根据实际情况来判断,以上字符可能不需要转义,也可能不止以上字符需要转义,
这些都取决于在当前情况下其是否会产生异义。

 

2.js的正则表达式除啦按照数字和字母进行匹配,同时也支持非字母的字符匹配。需要\作为前缀来转义。

 

字符 正则   描述
\t /\t/ 制表符
\n /\n/ 制表符
\r /\r/ 回车符
\f /\f/ 换页符
\a /\a/ alert字符
\e /\e/ escape字符
\cX /\cX/ 与X相对应的控制字符
\b /\b/ 与回退字符
\v /\v/ 垂直制表符
\0 /\0/ 空字符

 

 3.匹配的字符类

 

 

字符 等同于 描述

 

. [^\n\r] 除了换行和回车之外的任意字符
\d [0-9] 数字字符
\D [^0-9] 非数字字符
\s [ \t\n\x0B\f\r] 空白字符
\S [^ \t\n\x0B\f\r] 非空白字符
\w [a-zA-Z_0-9] 单词字符(所有的字母)
\W [^a-zA-Z_0-9] 非单词字符

 

4.用于模式匹配String的方法。

 

-- search() 

 

"javascript".search(/script/i);//4
返回的是匹配到的位置。
-- replace()
"yes js i love js very much!".replace(/js/gi,'Java');//Java js i love Java very much!
-- match()
'2 is 5funcking 3'.match(/\d+/g)//['1','2','3']
-- split()
可以接受一个正则表达式作为参数。
"1 ,4 ,6 ,7".split(/\s*,\s*/g)//["1","4","6","7"]

 

 

5.修饰符:

 

--i 执行的时候不区分大小写
--g 执行是一个全局的匹配。找到所有的匹配。
--m 多行匹配模式。比如\n的换行依然能够匹配。

 

posted @ 2014-07-09 16:37  heimanba  阅读(206)  评论(0编辑  收藏  举报