<script> var str='AbCdEFgiX'; //JS风格: //这个正则表达式什么也不代表,只代表abc本身。 var reg=new RegExp('abc', 'i'); alert(str.match(reg)); //返回:AbC //常用风格: var re=https://www.jb51.net/efg/i; alert(str.match(re)); //返回:EFg </script>
4、方括号和元字符。
(1)、方括号。
方括号用于查找某个范围内的字符。
①、任意字符
表达式:[abc]
查找方括号中的任意字符。
[]在这里为或的意思,即随便出现哪个都行。
<script> var str='apc xpc ppc bpc spc opc'; //[apx]pc,随便出现哪个都行,即:apc ppc xpc var re=https://www.jb51.net/[apx]pc/g; alert(str.match(re)); //返回前个pc。 </script>
②、范围查找。
表达式:[0-9] [a-z] [A-z] [A-Z]
[0-9] 查找任意 0 - 9 的数字。
[a-z] 查找任意 a - z 的字符。
[A-z] 查找任意 大写A - 小写z 的字符。
[A-Z] 查找任意 大写A - 大写Z的字符。
③、排除查找。
表达式:[^abc] [^a-z] [^0-9]
[^abc] 查找任意不在方括号中的字符。
[^a-z] 查找任意除了字母以外的字符,包括数字符号中文外文。
[^0-9] 查找任意除了数字以外的字符,包括字母符号中文外文。
<script> var str='ot out o.t o t o`t ot ot'; //o和t中间除了数字,什么都可以 var re=https://www.jb51.net/o[^-]t/g; alert(str.match(re)); //返回:out,o.t,o t,o`t </script>
④、选择查找。
表达式:(a|b|c)
查找任何指定的选项,a或b或c。
⑤、匹配还可以使用组合模式,比如:[a-z0-9A-Z] [^a-z0-9]
[a-z0-9A-Z] 任意大小写字母和数字。
[^a-z0-9] 除了字母和数字以外,什么都可以。
(2)、元字符。
元字符是拥有特殊含义的字符,也可以叫做转义字符。
下面是一些常用的元字符:
元字符
描述
使用
查找非单词边界的匹配,也就是不位于开头或结尾,匹配位置的上一个和下一个字符的类型是相同的:即必须同为单词, 或必须同为非单词,字符串的开头和结尾处被视为非单词字符,如果未匹配到,则返回null。
.
查找单个字符,代表任意字符,不包括换行和行结束符。
不建议使用,容易出问题。
\w
查找单词字符,包括英文数字下划线,相当于[a-z0-9]
/\w/
\W
查找非单词字符,相当于[^a-z0-9]
/\W/
\d
查找数字,相当于[0-9]
/\d/
\D
查找非数字,相当于[^0-9]
/\D/
\s
查找空白字符,包括空格符、回车符、制表符、换行符和换页符,不可显示不可打印的字符。
/\s/
\S
查找非空白字符。
/\S/
\b
查找位于单词的开头或结尾的匹配,如果未匹配到,则返回null。
/\b/
\B
\n
查找换行符,如果找到则返回该位置,如果未找到则返回-1。
/\n/
\f
查找换页符。
/\f/
\r
查找回车符。
/\r/
\t
查找制表符。
5、量词。
所谓量词,就是数量词,即个数,用在正则中,表示出现的次数。
下面是一些常用的量词: