js中处理正则表达式的类:RegExp
用法:
var reg=new RegExp("express");
或者:
var reg=/express/;
js中常用的6个方法:
test():是否存在
exec():返回查询值
match():得到查询的数组
search():返回搜索的位置
replace():替换
split():分割成数组
这些方法,里面的参数都是正则表达式。
js中常用的4大类:
简单类、负向类、组合类、范围类。
简单类:/[123]qqqq/gi:表示开头必须包含123
负向类:/[^123]qqqq/gi:表示开头不包含123
组合类:/[0-9a-z ]/gi:表示是由数字、字母、换行符组成(无关顺序)
范围类:/[2-3]/gi:表示开头是2-3之间的数字
g:继续往下找:goto
i:不区分大小写:ignore
m:多行找
js中的元字符: + * ?
+: >或=1
*: >或=0
?:0或1
比如:/lol+/:表示lo后面的l可以是1个或者多个!
元字符范围的确定:
{n}:匹配确定的n个
{n,}:至少匹配n个
{n,m}:n<=m个
例如:
/s{4,}/ 表示“至少有4个以上的空格”
其他元字符:
s:单空格、tab符、换行符
S:除单空格外
d:0-9
w:字母、数字、下划线
W:除字母、数字、下划线
. :除换行符外
比如:
/s+/:匹配一个或多个空格字符
/d000/:总额达到千元的款项
js中的定位符:
^: 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 ' ' 或 ' ' 之后的位置。
$: 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 ' ' 或 ' ' 之前的位置。
: 匹配一个单词边界,也就是指单词和空格间的位置。必须在开头或者结尾。
B:必须在开头或者结尾之间,即非边界位置。
():整体
例如:
/^hello/ /hello$/ /com/ /com/
例1、匹配位于一行的开始处最多有两个数字的章节标题:
/^Chapter [1-9][0-9]{0,1}/
例2、匹配一行文字的开始和结束位置的正则表达式
/^Chapter [1-9][0-9]{0,1}$/
例3、以com结尾的单词
/com/
或运算
/to|too|2/ 字符串中含有to或者too或者2的。
转义字符的运用
转义字符也很关键,尤其是在一些关键字等做正则的时候,就需要转义!!!