JavaScript 字符串查找
■知识点
使用字符串的charAtO和charCodeAtO方法,可以根据参数(非负整数的下标值)返回指定位置的字符或字符编码。使用字符串的indexOf()和lastlndexOfO方法,可以根据参数字符串,返回指定子字符串的下标位置。
search()方法与indexOf()功能相同,查找指定字符串第一次出现的位置。但是search()方法仅有一个参数,定义匹配模式。该方法没有lastlndex0f()方法的反向检索功能,也不支持全局模式。
match()方法能够找出所有匹配的子字符串,并以数组的形式返回。
■实例设计
【示例1】下面的示例为String类型扩展一个原型方法,用来把字符串转换为数组。在函数中使用charAt()方法读取字符串中每个字符,然后装入一个数组并返回。
String.prototype.toArray = function() { //把字符串转换为数组
var 1 = this.length, a =[]; //获取当前字符串长度,并定义空数组
if (1){ //如果存在则执行循环操作,预防空字符串
for( var i = 0; i < 1; i ++ ){ //遍历字符串,枚举每个字符
a.push( this.charAt( i ) ); //把每个字符按顺序装入数组
}
}
return a; //返回数组
}
应用原型方法:
var s = "abcdefghijklmn" . toArray () ; //把字符串转换为数组
for (var i in s) { //遍历返回数组,显示每个字符
console.log(s [i]);
}
【示例2】下面的代码分别查询URL字符串中两个点号字符的下标位置。
var s = "http://www.mysite.cn/”;
var b = s.indexOf ( " . " ); //返回值为10,即第1个字符"."的下标位置
var e = s.indexOf ( " . ", b + 1 ) ; //返回值为17,即第2个字符"."的下标位置
下面的代码按从右到左的顺序查询URL字符串中最后一个点号字符的下标位置。
var s = "http://www.mysite.cn/index.html";
var n = s.lastlndexOf ( "." ) ; //返回值为26,即第3个字符"."的下标位置
点击加载更多评论>>