本文共 2298 字,大约阅读时间需要 7 分钟。
new RegExp('检索字符', '修饰符');
var reg1 = new RegExp('abc');console.log(reg1); // /abc/console.log(typeof reg1); // objectvar reg2 = /abc/;console.log(reg2); // /abc/console.log(typeof reg2); // objectconsole.log(reg1 == reg2); // false
// g:global 全局匹配var str = 'hello java, hello web, hello world';var reg1 = /hello/;var reg2 = /hello/g;console.log(str.replace('hello', '你好')); // 你好 java, hello web, hello worldconsole.log(str.replace(reg1, '你好')); // 你好 java, hello web, hello worldconsole.log(str.replace(reg2, '你好')); // 你好 java, 你好 web, 你好 world// i: ignore case 不区分大小写var str = 'Hello World';var reg1 = /hello/;var reg2 = /hello/i;console.log(str.replace(reg1, '你好')); // Hello Worldconsole.log(str.replace(reg2, '你好')); // 你好 World
// - test: 检索字符串中是否含有符合正则表达式的内容, 返回值为Boolean.// - exec: 检索字符串中符合正则表达式的内容, 返回值是数组, 如果检索不到返回null.var str1 = 'abcd';var str2 = 'a1b2c1d';var reg = /abc/;console.log(reg.test(str1)); // trueconsole.log(reg.test(str2)); // falseconsole.log(reg.exec(str1)); // ["abc", index: 0, input: "abcd", groups: undefined]console.log(reg.exec(str2)); // null
// replace(): 替换var str = 'hello web';var reg = /hello/;console.log(str.replace(reg, '你好'));// split(): 切割var str = 'web java ui';console.log(str.split(' '));console.log(str.split(/ /));var str = 'web java ui';console.log(str.split(' ')); // (12) ["web", "", "", "", "java", "", "", "", "", "", "", "ui"]console.log(str.split(/ /)); // (12) ["web", "", "", "", "java", "", "", "", "", "", "", "ui"]console.log(str.split(/\s+/)); // ["web", "java", "ui"]// match(): 检索字符串, 效果exec一致var str = 'abc';console.log(str.match('c')); // ["c", index: 2, input: "abc", groups: undefined]console.log(str.match(/c/)); // ["c", index: 2, input: "abc", groups: undefined]// search(): 查找目标字符串,返回第一次出现的位置, 找不到返回-1var str = 'abc';console.log(str.search('c')); // 2console.log(str.search(/c/)); // 2console.log(str.search(/x/)); // -1
转载地址:http://btse.baihongyu.com/