目录
创建正则表达式
实例方法
字符串中的正则方法
字符串的 match()方法
字符串的 search()
字符串的 split()方法
字符串的 replace()
字符串的 trim()方法
创建正则表达式
js 中 正则表达式表现为一个对象,该对象是通过RegExp构造的
var rag = /\d/gim; //字面量
标志位 全局搜索后面加个 g ;不区分大小写加个 i ;多行匹配加个 m ;
验证某个字符串是否满足规则
在全局模式下 会接着上一次的接着匹配
在单行模式下 会从头开始匹配
正常模式下 是贪婪匹配 更改贪婪模式在量词后加上?
实例方法 .test
(string) => true/false
实例方法 .exec
得到一个真数组 第一项表示匹配结果 index是匹配开始的下标 input是匹配的完整字符串
会受到 lastIndex 的影响改变匹配开始的下标位 匹配不到返回 null
var reg = /^\d/;
(('123'));
["1", index: 0, input: "123", groups: undefined]
0: "1"
groups: undefined
index: 0
input: "123"
length: 1
__proto__: Array(0)
字符串中的正则方法
字符串的 match()方法
可以与正则表达式匹配 第一项表示匹配结果 index是匹配开始的下标
var reg = /^\d/;
var s = '123abc';
((reg));
["1", index: 0, input: "123abc", groups: undefined]
0: "1"
groups: undefined
index: 0
input: "123abc"
length: 1
__proto__: Array(0)
字符串的 search()
方法 返回第一次匹配到的下标
var reg = /^\d/;
var s = '123abc';
((reg));-->0
字符串的 split()方法
分割字符串 利用正则表达式多种分割方式
var reg = /[\t\s,-]/;
var s = 'asadsa,sda sdad-sdd\tsdad';
((reg));
(5) ["asadsa", "sda", "sdad", "sdd", "sdad"]
0: "asadsa"
1: "sda"
2: "sdad"
3: "sdd"
4: "sdad"
length: 5
__proto__: Array(0)
字符串的 replace()
方法 返回用新的子串来替换被匹配的字符串 不会改变原来字符串 要开启全局匹配
var reg = /[\s,]/g;
var s = 'asadsa,sda sdad-sdd\tsdad';
((reg,"'"));//-->asadsa'sda'sdad-sdd'sdad
((/[\t\s,-]/g,","));//-->asadsa,sda,sdad,sdd,sdad
第二个参数可以是一个函数 函数的第一个参数match是匹配到的结果 把他进行大写
var reg = /[\s,]/g; //正则表达式
var s = 'asadsa,sda sdad-sdd\tsdad';
((/\b[a-z]/g,function(match){
return (); -->Asadsa,Sda Sdad-Sdd Sdad
}));
字符串的 trim()方法
去掉字符串首位空格
var reg = /[\s,]/g;
var s = ' study shcool class name one abcd ';
((/\s*\b[a-z]\s*/g,function(match){
return ().trim();//-->StudyShcoolClassNameOneAbcd
}));