今天突然被問到了正則表達式,因為長時間不用突然不知道怎么用了,只知道有這么個東西。然后去網上查了一下,感覺寫的不少,但解釋的有點模糊,今天我來淺談一下。
1,match的用法
A,在不加全局“g”的情況下:
var str="wo shi zhong guo ren";
console.log(str.match(/o/));
返回的結果是:["o", index: 1, input: "wo shi zhong guo ren"];
A,在加全局“g”的情況下:
var str="wo shi zhong guo ren";
console.log(str.match(/o/g));
返回的結果是:["o", "o", "o"];
2,exec的用法
var str="wo shi zhong guo ren";
var re=/o/;
console.log(re.exec(str));
返回的結果是:["o", index: 1, input: "wo shi zhong guo ren"];
在這里我想大家可以看到了exec返回的不是和match不加全局“g”’一樣嗎?你答對了。
3,test的用法
var str="wo shi zhong guo ren";
var re=/o/;
console.log(re.test(str));
返回的結果是:true(如果找不到返回的則是false);
4,search的用法
關於search用法其實很簡單,它和indexOf是一樣的,就是找到index,而且是從前往后數的。
var str="wo shi zhong guo ren";
var re=/o/;
console.log(str.search(re));
返回的結果是:1;