首页 > 代码库 > js正则表达式学习1

js正则表达式学习1

一、js-正则表达式
   是一个描述字符模式的对象。ECMAScript的RegExp类表示正则表达式。正则表达式主要用来验证客户端的输入数据、用户填写完表单单击按钮后,表单就会被发送到服务器。
二、创建正则表达式
   1、使用new运算符创建
   var box=new RegExp(‘Box‘);//第一个参数是模式字符串(两个反斜杠是正则表达式的字面量表示法)
   var box=new RegExp(‘box‘,‘ig‘);//第二个参数可选模式修饰符(i:忽略大小写;g:全局匹配;m:多行匹配)
   2、使用字面量表示法创建(常用)
   var box=/Box/;//使用字面量方式的正则
   var boa=/box/ig;//在第二个斜杠后面加上模式修饰符
三、测试正则表达式
   1、使用test()方法
   如:
   var pattern=new RegExp(‘Box‘);//模式
   var str=‘box‘;//字符串
   alert(pattern.test(str));//返回的是false,大小写不一致
   
   var pattern=new RegExp(‘Box,‘i‘);//区分大小写
   var str=‘box‘;//字符串
   alert(pattern.test(str));//返回的是true
   
   var pattern=new RegExp(‘Box,‘i‘);//区分大小写
   var str=‘this is a box‘;//字符串
   alert(pattern.test(str));//返回的是true,字符串中是否包含模式中的正则
   2、使用exec()返回匹配数组
   var pattern=/Box/i;
   var str=‘tish is a box‘;
   alert(pattern.exec(str));//匹配了返回数组,否则返回null

四、

技术分享

   1、使用match方法获取匹配数组
   var pattern=/box/ig;//全局搜索
   var str=‘this is a bax!,that is a box too‘;
   alert(str.match(pattern));//匹配到两个Box;
   alert(str.match(pattern).length);//获取数组的长度
   
   var pattern=/box/i;//没有开启全局
   var str=‘this is a bax!,that is a box too‘;
   alert(str.match(pattern));//匹配到第一个字符串返回数组;
   
   2.使用search来查找匹配数据
   var patern=/box/ig;
   var str=‘this is a bax!,that is a box too‘;
   alert(str.search(pattern));//查找到返回第一个匹配位置,否则返回-1;
   
   3、使用replace替换匹配到的数据
   var patern=/box/ig;
   var str=‘this is a bax!,that is a box too‘;
   alert(str.search(pattern,‘Tom‘));//将box替换成了Tom
   
   var patern=/box/i;没有开启全局
   var str=‘this is a bax!,that is a box too‘;
   alert(str.search(pattern,‘Tom‘));//将第一个box替换成了Tom
   
   4、使用split拆分成字符串数组
   var pattern=//ig;
   var str=‘this is a bax!,that is a box too‘;
   alert(st.split(pattern));//将空格拆开分成数组
   
 技术分享  技术分享

js正则表达式学习1