1.正则表达式: 对象 将一个字符串里面所有的数字分离出来;
2.传统的不用正则的写法;(是一个函数的写法在这里就不写了)
3.第一种正则定义: / / 双斜杠;
test方法:检测字符串里面有没有某个正则规则,返回布尔值 console.log(obj.test(string));
exec方法: 检索字符串中指定的值,返回找到的值,并确定其位置
toString方法:返回正则表达式的字符串
II 支持正则表达式的字符串方法:
search:检索与正则表达式相匹配的值;
(匹配相对应的正则表达式,有就返回相对应的索引位置,没有的话就返回的是-1)
match: 找到一个或多个正则表达式的匹配; 只能匹配到大分组里的
(匹配相对应的正则表达式,有就返回的是查找结果还有他的长度,没有就是null;)
replace:替换与正则表达式匹配的字符串;
(第二个参数为替换后的新字符串,可以是简单类型如字符串,
也可以是函数,注意函数要有返回值,并且将这个返回值作为字符串)
split: 把字符串分割成字符串数组
4.第二种正则定义:↓
var x = 'hello'
var reg = new RegExp( x )
var str = 'helloworld'
console.log(reg.test(str));
引用外部变量座位作为规则
5.转义字符
I d 数字 D 非数字
II s 空格(空格 tab 换行
) S 非空格
III w 字符(字母 数字 _) W 非字符
IV 独立的单词||单词边界(空格 起始位置 连词符号) [除了字母数字下划线都是连词符号(w)]
V B 非独立部分
6.修饰符
i 执行对大小写不敏感的匹配
g 执行全局匹配
m 执行多行匹配
7.方括号
[abc] 查找方括号之间的任何字符
[^abc] 查找任何不在方括号之间的字符
[0-9] 查找任何0-9的数字
[a-z] 查找任何从小写a到小写z的字符
[A-Z] 查找任何从大写A到大写Z的字符
[A-z] 查找任何从大写A到小写z的字符
8. 量词
{n,m} 最少n个 最多m个
{n,} 最少n个 最多没有限制
{n} 必须是n个
9.特殊量词的替代写法
{1,} n+ 最少一个最多不限制
{0,1} n? 要么不匹配要么匹配一个(0个或者1个)
{0,} n* 有没有都可以 (0个或者多个)
n{X} 匹配包含X个n的序列字符串(X为数字)
^n 匹配任何开头为n的字符串
n$ 匹配任何结尾为n的字符串
?=n 匹配任何其后紧跟指定字符串n的字符串
d+ 最少一个最多没有限制 贪婪匹配
10.replace细说
Replace是字符串的一个方法,他有两个参数,用后者将前者替换掉,并返回一个新的字符串,但是没有改变原来的字符串.(所以说不能直接返回当前值,得写一个变量来存储它,然后打印)
1.如果第一个参数是字符串,只改变一次
2.如果第一个参数是正则,捕获一次改变一次
3.如果第二个参数是匿名函数,每捕获一次这个匿名函数会执行一次,return的是什么,那就替换成什么。这个匿名函数的arguments有三个元素。