一、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