字符串长度
length
属性返回字符串的长度:
实例
var txt = "ABCD";
var sln = txt.length; //4
查找字符串中的字符串
indexOf()
方法返回字符串中指定文本首次出现的索引(位置):
实例
var str = "The full name name";
var pos = str.indexOf("name"); //9
JavaScript 从零计算位置,且只出现第一个的首位
lastIndexOf()
方法返回指定文本在字符串中最后一次出现的索引 – 索引值本身是从头开始算的。
实例
var str = "The full name name";
var pos = str.lastIndexOf("name"); //14
如果未找到文本, indexOf()
和 lastIndexOf()
均返回 -1。
第二个参数
两种方法都接受作为检索起始位置的第二个参数,number 类型,
indexOf() 中表示从什么位置开始搜索。
lastIndexOf()
方法向后进行检索(从尾到头),这意味着:假如第二个参数是 5,则从倒数第 5 位开始检索,直到字符串的起点。
实例
var str = "the full name the.";
var pos = str.indexOf("the", 1); //14
var pos = str.lastIndexOf("the", 1); //0
检索字符串中的字符串
search()
方法搜索特定值的字符串,并返回匹配的位置:
实例
var str = "the People's Republic";
var pos = str.search("People"); //4
补充:
indexOf()
与 search()
,是相等的。
这两种方法是不相等的。区别在于:
- search() 方法无法设置第二个开始位置参数。
- indexOf() 方法无法设置更强大的搜索值**(正则表达式)**。
提取部分字符串
有三种提取部分字符串的方法:
- slice(start, end)
- substring(start, end)
- substr(start, length)
slice() 方法
slice()
提取字符串的某个部分并在新字符串中返回被提取的部分。
该方法设置两个参数:起始索引(开始位置),终止索引(结束位置)。
这个例子裁剪字符串中位置 7 到位置 13 的片段:
实例
var str = "Apple, Banana, Mango";
var res = str.slice(7,13); //Banana
如果某个参数为负,则从字符串的结尾开始计数。
这个例子裁剪字符串中位置 -12 到位置 -6 的片段:
实例
var str = "Apple, Banana, Mango";
var res = str.slice(-13,-7); //Banana
如果省略第二个参数,则该方法将裁剪字符串的剩余部分:
实例
var str = "Apple, Banana, Mango";
var res = str.slice(7); //Banana, Mango
或者从结尾计数:
实例
var str = "Apple, Banana, Mango";
var res = str.slice(-13); //Banana, Mango
**注:**负值位置不适用 Internet Explorer 8 及其更早版本。