正则表达式学习

字符串函数

1.search的用法
var str="ssdsaassss"; str.search('aa');
search返回要查找的字符串第一次出现的位置,如果不存在则返回-1
2.substring的用法
var str="dsadasfasdf"; str.substring(1,4);
substring不包含结束位置
3.split的用法
var str="123-23-sdd-sg222-sfhhh-sss"; str .split(-);
将字符串按照指定的规则,分割成数组
4.charAt的用法
var str="123456"; str.charAt(1);
获取某个字符

不使用正则的情况下,使用字符串函数去处理问题也可以,但是代码很复杂,繁琐。
于是,就出现了正则,这一专门用来处理字符串的工具。

简单正则:
var str="absdsghjhjs"; var reg=new RegExp('a'); alert(reg.test(str));

new RegExp('a',i);
i为忽略大小写

字符类

1.正则中g
var str="absdsghjhjs8 sakdgj38fd -22 28dfjs73t9sa0sgdffgas982"; var re=/\d/g; alert(str.match(re));
g全局匹配
2.正则中+号
var str="absdsghjhjs8 sakdgj38fd -22 28dfjs73t9sa0sgdffgas982"; var re=/\d/g; alert(str.match(re));
+号是量词,许多,表示任意多少
3.正则中replace
var str="absdsghjhjs8 sakdgj38fd -22 28dfjs73t9sa0sgdffgas982";
alert(str.replace(/a/gi,'T'));
4.正则中[]
var str="12sf1a35sgf3a3412d2as2311s13 1a2as 2av1 "; var re=/1[abc]2/g; alert(str.match(re));
1[abc]2在方括号的字符形成1a2、1b2、1c2的规则
5.正则中-
var str = "12sf1a35sgf3a3412d2as2311s13 1s2as 2av1 "; var re = /1[a-z]2/g; alert(str.match(re));
a-z表示a到z
6.正则^
var str = "12sf1a35sgf3a3412d2as2311s13 1a2as 2av1 "; var re = /1[^a]2/g; alert(str.match(re));
^a表示除了a之外的所有字符
7.正则中.
.在正则中代表任意字符
8.正则中\w
\w代表[a-z0-9]
9.正则中\s
\s代表所有的空格类的空白字符
10.正则中\D \S \W
\D表示[^0-9]
\W表示[^a-z0-9]
\S表示除了空格之外的特殊字符

量词类

1.{n,m}
最少出现n次,最多m次
2.{n,}
最少n次,最多不限
3.{,m}
最少不限,最多m次
4.{n}
正好n次
5.?
零次或1次
6.*
任意次
7./^&/
表示行首行尾

你可能感兴趣的:(正则表达式学习)