本文实例讲述了 JS 截取与分割字符串的常用方法. 分享给大家供大家参考, 具体如下:
JS 截取字符串可使用 substring()或者 slice()
函数: substring()
定义: substring(start,end)表示从 start 到 end 之间的字符串, 包括 start 位置的字符但是不包括 end 位置的字符.
功能: 字符串截取, 比如想从 "MinidxSearchEngine" 中得到 "Minidx" 就要用到 substring(0,6)
例子:
- var src="images/off_1.png";
- alert(src.substring(7,10));
- // 弹出值为: off
函数: substr()
定义: substr(start,length)表示从 start 位置开始, 截取 length 长度的字符串.
功能: 字符串截取
例子:
- var src="images/off_1.png";
- alert(src.substr(7,3));
- // 弹出值为: off
函数: split()
功能: 使用一个指定的分隔符把一个字符串分割存储到数组
例子:
- str="jpg|bmp|gif|ico|png";
- arr=theString.split("|");
- //arr 是一个包含字符值 "jpg","bmp","gif","ico" 和 "png" 的数组
函数: John()
功能: 使用您选择的分隔符将一个数组合并为一个字符串
例子:
- var delimitedString=myArray.join(delimiter);
- var myList=new Array("jpg","bmp","gif","ico","png");
- var portableList=myList.join("|");
- // 结果是 jpg|bmp|gif|ico|png
函数: indexOf()
功能: 返回字符串中匹配子串的第一个字符的下标
- var myString="JavaScript";
- var w=myString.indexOf("v");w will be 2
- var x=myString.indexOf("S");x will be 4
- var y=myString.indexOf("Script");y will also be 4
- var z=myString.indexOf("key");z will be -1
函数: lastIndexOf()
定义: lastIndexOf()方法返回从右向左出现某个字符或字符串的首个字符索引值(与 indexOf 相反)
功能: 返回字符串索引值
例子:
- var src="images/off_1.png";
- alert(src.lastIndexOf('/'));
- alert(src.lastIndexOf('g'));
- // 弹出值依次为: 6,15
补充: substr 和 substring 方法的区别
substr 方法
返回一个从指定位置开始的指定长度的子字符串.
stringvar.substr(start [, length ])
参数
stringvar
必选项. 要提取子字符串的字符串文字或 String 对象.
start
必选项. 所需的子字符串的起始位置. 字符串中的第一个字符的索引为 0.
length
可选项. 在返回的子字符串中应包括的字符个数.
说明
如果 length 为 0 或负数, 将返回一个空字符串. 如果没有指定该参数, 则子字符串将延续到 stringvar 的最后.
示例
下面的示例演示了 substr 方法的用法.
- function SubstrDemo(){
- var s, ss; // 声明变量.
- var s = "The rain in Spain falls mainly in the plain.";
- ss = s.substr(12, 5); // 获取子字符串.
- return(ss); // 返回 "Spain".
- }
substring 方法
返回位于 String 对象中指定位置的子字符串.
- strVariable.substring(start, end)
- "String Literal".substring(start, end)
参数
start
指明子字符串的起始位置, 该索引从 0 开始起算.
end
指明子字符串的结束位置, 该索引从 0 开始起算.
说明
substring 方法将返回一个包含从 start 到最后 (不包含 end ) 的子字符串的字符串.
substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点. 例如, strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串.
如果 start 或 end 为 NaN 或者负数, 那么将其替换为 0.
子字符串的长度等于 start 和 end 之差的绝对值. 例如, 在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串的的长度是 3.
示例
下面的示例演示了 substring 方法的用法.
- function SubstringDemo(){
- var ss; // 声明变量.
- var s = "The rain in Spain falls mainly in the plain..";
- ss = s.substring(12, 17); // 取子字符串.
- return(ss); // 返回子字符串.
- }
来源: http://www.jb51.net/article/74614.htm