JS截取与分割字符串常用技巧总结

函数: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
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 对象中指定位置的子字符串。
stringObject.substring(start, end)
参数:
start:必需。一个非负的整数,指明子字符串的起始位置,该索引从 0 开始起算。
end:可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。指明子字符串的结束位置,该索引从 0 开始起算。
返回值:
一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 end-1 处的所有字符,其长度为 end减 start。
说明:
substring 方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。
substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点。例如, strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串。
如果 start 或 end 为 NaN 或者负数,那么将其替换为0。
substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
如果 start 或 end 为负数,那么它将被替换为 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); // 返回子字符串。
}

slice(start,[end])

第一个参数代表开始位置,第二个参数代表结束位置的下一个位置,截取出来的字符串的长度为第二个参数与第一个参数之间的差;若参数值为负数,则将该值加上字符串长度后转为正值;若第一个参数等于大于第二个参数,则返回空字符串.

function SubstringDemo(){
 var ss; // 声明变量。
 var s = "12345";
 ss = s.substring(1, 3); // 取子字符串:23。
 return(ss); // 返回子字符串。
}

函数:split()

功能:使用一个指定的分隔符把一个字符串分割存储到数组

str="jpg|bmp|gif|ico|png";
arr=theString.split("|");
//arr是一个包含字符值"jpg"、"bmp"、"gif"、"ico"和"png"的数组

函数:Join()

功能:使用您选择的分隔符将一个数组合并为一个字符串

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

strggle_bin

一毛不嫌少,十元不嫌多

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值