JS正则表达式(基础篇)
Author TK | 28/09/2014
什么是正则表达式
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录eCase :对象是否具有标志 i ;返回值为bool值。
multiline :对象是否具有标志 m ;返回值为bool值。
lastIndex :表示开始下一次匹配的字符位置 ; 返回值为整型。
source : 正则表达式的源文本 ; 返回值为字符串。
例:var reg =new RegExp(“try”,”g”),str=”try try try”;
: true;
: false;
: flse;
: “try”;
do{
();var result=(str);
}while(result); //结果输出 0 3 7 11.
支持正则表达式的字符串对象的方法
·search :检索与正则表达式相匹配的值;
·match :找到一个或多个正则表达式的匹配;
·replace :替换与正则表达式匹配的子字符串;
·split :把字符串分割为字符串数组;
详情请参考其他关于字符串对象的文献,此处不做详解。
正则表达式字符以及其上下文行为表
字符
描述
.
匹配除 "\n" 之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]' 的模式。
\
将下一个字符标记为一个特殊字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。
^
匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。
$
匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置。
*
匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。 * 等价于{0,}。
+
匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 {1,}。
?
匹配前面的子表达式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等价于 {0,1}。
当该字符紧跟在任何一个其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 "oooo",'o+?' 将匹配单个 "o",而 'o+' 将匹配所有 'o'。
\w
匹配包括下划线在内的任何单词字符,等价于 [A-Za-z0-9_]
\W
匹配任何非单词
JS正则表达式 来自淘豆网m.daumloan.com转载请标明出处.