您的位置:首页 > Web前端 > JavaScript

Javascript 正则表达式

2015-12-27 20:00 716 查看

1.创建方法
<span style="font-weight: normal;"><span style="font-size:24px;">//方法一
var box = new RegExp('box','gim'); //第一个参数为模式字符串,第二个参数为可选模式修饰符
alert(box);</span></span>


<span style="font-weight: normal;">//方法二
var box=/box/gim;
alert(box);</span>
2.测试

字符串的测试方法包括test() 和exec() 是正则表达式提供的

test是测试字符串中是否存在模式字符串 返回的是布尔类型 存在返回true;不存在返回false

exec返回的是object类型 即数组 有就返回数组 没有就返回null;

<span style="color:#333333;">var pattern = new RegExp('Box','i');   //忽略大小写 返回true
var str='box';
alert(pattern.test(str));</span>
var pattern = /Box/i;
var str='This is a box';
alert(pattern.test(str)); //true 意为This is a box中是否包含不区分大小写的Box


var pattern =/Box/i;
var str='box';
alert(pattern.exec(str)); //返回的是数组 有就返回数组 没有就返回null

var pattern =/Box/i;
var str='sss';
alert(pattern.exec(str)); //返回null


string也提供了测试字符串的四个方法

//match

var pattern =/Box/i; //没有开启全局

var str='This is a Box! That is a box!';

alert(str.match(pattern)); //匹配到第一个字符串返回数组 这里只返回第一个Box;

var pattern =/Box/ig; //开启了全局

var str='This is a Box! That is a box!';

alert(str.match(pattern)); //将所有匹配的字符串组成数组返回 这里返回Box box;

//search方法 查找到即返回 所以无需g全局

var pattern =/Box/i;

var str='This is a Box! That is a box!';

alert(str.search(pattern)); //返回的第一个匹配的位置10

var pattern =/xxx/ig;

var str='This is a Box! That is a box!';

alert(str.search(pattern)); //匹配不到 返回-1;

//replace

var pattern =/Box/i; //没有开启全局

var str='This is a Box! That is a box!';

alert(str.replace(pattern, 'Tom')); //返回替换后的字符串 只限第一个

var pattern =/Box/ig; //开启全局

var str='This is a Box! That is a box!';

alert(str.replace(pattern,'Tom')); //返回替换后的字符串 所有匹配都会被替换

//split

var pattern =/ /ig; //按空格分开

var str='This is a Box! That is a box!';

alert(str.split(pattern)); //返回的是分开后的字符串

alert(str.split(pattern).length);



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: