正则表达式(简单整理)

来源:互联网 发布:深入php 编辑:程序博客网 时间:2024/05/29 03:36

正则表达式

两种写法

  • var re = new RegExp(“a”);

  • 2 var re = /a/;

常用符号

\s : 空格
\S : 非空格
\d : 数字
\D : 非数字
\w : 字符 ( 字母 ,数字,下划线_ )
\W : 非字符例子:是否有不是数字的字符
\b : 独立的部分 ( 起始,结束,空格 )
\B : 非独立的部分
| : 或的意思
\ : 后边不转译

表达式

():,小括号,叫做分组符
[] : 表示某个集合中的任意一个
{n,m}:至少出现n次,最多m次
{n,} :至少n次
* :任意次 相当于{0,}
? :零次或一次 相当于{0,1}
+ :一次或任意次相当于 {1,}
/^ : 表示开始位置
/$ : 表示结束位置

常用方法

  1. test(): 测试是否符合正则表达式
var str = '374829348791';var re = /\D/; // \D代表非数字if( re.test(str) ){ // 返回true,代表在字符串中找到了非数字。alert('不全是数字');}else{alert('全是数字');}
  1. search(): 寻找字符串,找到返回下表,找不到返回-1
var str = 'abcdef';var re = /B/i;//var re = new RegExp('B','i'); 
  1. match() 在字符串中搜索复合规则的内容,搜索成功就返回内容,格式为数组,失败就返回null。
 str.match(re) 
  1. replace() :查找符合正则的字符串,就替换成对应的字符串。返回替换后的内容。
var str = "我爱北京天安门,天安门上太阳升。";var re = /北京|天安门/g; // 找到北京 或者天安门 全局匹配var str2 = str.replace(re,'*');