一、创建正则表达式:1.2.
1.var reg = /abc/;
2.var reg = new RegExp("abc","i");
判断 str里是否有reg:
reg.test();正则判断,str里是否有reg,有ture,没有false。
只能判断 返回 ture或false
var reg = /abcd/;
var str = "abcde";
>reg.test(str)
<ture
i 不分大小写
var reg = /abcd/i; var str = “ABCde” > reg.test(str) < ture
g:全局匹配。查找出所有匹配。
m: 多行匹配。
str.match():字符串里的方法,把符合正则表达式的片段匹配出来。
var reg = /^a/g; //^a 代表行开头 a$以a结尾 var str = "abcdea"; >str.match(reg) <["a"]
var reg = /^a/g; //g 只是匹配在一行中的a var str = "abdagc\nadj"; >str.match(reg) <["a","a"]
var reg = /^a/gm; //gm相结合使用,多行开头的a都可以匹配到 var str = "abdagc\nadj"; >str.match(reg) <["a","a","a"]
var reg = /[取值范围]/g; //[]:一个[]代表一位,[取值范围]
/[0-9A-a]/
var reg = /(abc|bcd)[0-9]/g; //| 代表或 var str = "bcd2"; >str.match(reg) <['bcd2']
/[^a]/放在表达式里代表非、除了a;
var str = "ehiowfe214"
\w === [0-9A-a_]
\W ===[^\w]
\d === [0-9]
\D === [^d]
\s === [\t\n\r\v\f ]
\S === [^s]
\b === 单词边界
\B === 非单词边界
var reg = /\bcde\B/g; var str = "abc cdefgh" >reg.match(str) <["cde"]
\. === [^\r\n]
\t \n
var reg = /\tc/; var str = "ji\tcfeko"; >reg.match(str) < [' c']
汉字 unicode:汉字转码器
代表所有:/[\d\D]/ /[\s\S]/
- 判断首尾都是否含有数字
匹配方法:
reg.exec();
- \1:反向引用第一个字表达式匹配的内容
- 把a替换成b,replace没有访问全局的能里,结果返回-->ba
利用正则可以把所有a替换成b,结果返回-->bb
将aabb替换成bbaa,$1代表第一个字表达式的内容;$2代表第二个字表达式的内容。
大小写转换
.toUpperCase()
?=b只是修饰,不参与匹配
?!b 不跟着b的a
+贪婪匹配;+?非贪婪匹配
返回值abc:
100.000.000.000.000