JavaScript:查找/匹配

2019-08-15 10:20:13 浏览数 (1)

一、string中提供的

charAt() 返回在指定位置的字符。 示例:'abc'.charAt(1); //"b" charCodeAt() 返回在指定的位置的字符的 Unicode 编码。 示例:'abc'.charCodeAt(1); //98 indexOf(searchvalue,fromindex) 检索字符串,返回对应下标。 示例:'abcabc'.indexOf('b',0); //1 'abcabc'.indexOf('b',2); //4 search(regexp) 检索与正则表达式相匹配的值,返回对应下标。 示例:'abcabc'.search('b'); //1 'abcabc'.search(/b/img); //1 match(regexp) 找到一个或多个正则表达式的匹配,没有返回null,否则返回数组 示例:'abcabc'.match('b'); //["b"] 'abcabc'.match(/b/img); //["b", "b"] PS:上述regexp,可以是子串、也可以是正则。

二、RegExp

直接量语法:/pattern/attributes 创建RegExp对象的语法:new RegExp(pattern, attributes); RegExpObject.lastIndex 用于规定下次匹配的起始位置。 attributes: i 执行对大小写不敏感的匹配。 g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 m 执行多行匹配。 (1)RegExpObject.exec(string) 返回一个数组,其中存放匹配的结果;检索不到返回null。 示例1:

代码语言:javascript复制
/c/img.exec('abcdefgc');  //['c']
new RegExp("c","img").exec('abcdedgc'); //['c']
/c/img.exec('a');  //null

示例2:

代码语言:javascript复制
var reg = new RegExp("c","im");
reg.exec("abcabc");    //["c"]
reg.lastIndex;    //0

var reg = new RegExp("c","img");
reg.exec("abcabc");    //["c"]
reg.lastIndex;    //0

typeof reg;    //"object"
Object.prototype.toString.call(reg);    //"[object RegExp]"

(2)test 检索字符串中指定的值。返回 true 或 false。 示例:

代码语言:javascript复制
/c/img.test('abcdefgc');  //true

new RegExp("c","img").test('abcdedgc'); //true

0 人点赞