Javascript正则表达式:
一、
1、正则表达式就是一种规则,就像我们通过dtd验证xml是不是符合某种规则,正则就是用来验证我们的字符串是不是符合某种规则
2、正则可以理解成筛子,将网页上我们需要的数据给筛选出来
3、正则表达式是一门语言,不依赖于任何其他的语言,只是其他语言如何去支持正则
二、
Javascript操作正则是通过RegExp这个对象来实现的
获得这个对象:
New RegExp(正则表达式,模式修正符)
快捷语法: /正则表达式/模式修正符
常用的方法:
Test() 检测字符串是否含有符合我们规则的字符,返回布尔类型的值
Exec() 检测字符串是否含有符合我们规则的字符,如果有返回匹配到的值,否则返回null
三、
表示字符集 【】
【】中 - 表示的是 一个范围
[a-z] 表示小写字母
[A-Z] 大写字母
[0-9] 表示所有的数字
[za] z 或 a 二选1
var reg=/[^a-z]/; []中^代表非
var reg=/^[a-z]$/; []中^代表某个字符的开始 $代表以某个字符结束
| 代表或
var reg = /a|b|c/;
. 表示任意字符,但是不匹配 换行符(\n)
\ 转义字符,将后面字符原样输出
常用的转义字符来表示 某个字符
\w 所有的字母数字下划线 等于 [a-zA-Z0-9_]
var reg = /\w/; //匹配所有所有的字母数字下划线 [a-zA-Z0-9_]
var str = 'www.hbsi.com';
alert(reg.exec(str));
\W 非 \w
\d 所有的数字
\D 所有的字符除了 数字
\s 空格
\S 所有字符,但是除了空格
\b 字符边界(boundary)
\D 所有的字符,但是除了字符边界
四、
Unicode编码表示汉字
因为javascript内置的编码就是 unicode,4e00-9fa5
五、表示字符数量
{} 表示是数量范围
{最小数量,最大数量} {1,6}最少1次最多6次
{1,} 表示1到正无穷
{,5} 表示最多5个
{6} 表示6次
* 0次或多次 任意多
+ 表示最少1次(1次或多次)
? 0 次或1次