js字符串的操作方法
浏览 2,133  留下评论 »
发表在 javascript/jQuery

字符串的分割方法在js中经常会用到,每次用的时候我都会去搜索一遍,很麻烦,今天特地整理了一下,方便今后查阅。

slice

stringObject.slice(start,[end])
返回一个新的字符串。包括字符串 stringObject 从 start 开始(包括 start)到 end 结束(不包括 end)为止的所有字符。
start如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。

substring

stringObject.substring(start,[stop])
返回一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。

:与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数。
substring()的第二个参数是负数的话,例子中会把第二个参数转换为0,变为substring(3,0),这个方法会将较小的数作为开始位置,较大的数作为结束位置,相当于substring(0,3)。

substr(非标准)

stringObject.substr(start,[length])
返回一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 lenght 个字符。如果没有指定 lenght,那么返回的字符串包含从 start 到 stringObject 的结尾的字符。

:IE负值会返回原始字符串
substr()的第二个参数是负数的话,也会把第二个参数转换为0,变为substr(3,0)。

slice(),substring(),substr()不会修改字符串本身的值
例:

var stringValue="hello world";
alert(stringValue.slice(3));    //"lo world"
alert(stringValue.substring(3));    //"lo world"
alert(stringValue.substr(3));    //"lo world"
alert(stringValue.slice(3,7));    //"lo w"
alert(stringValue.substring(3,7));    //"lo w"
alert(stringValue.substr(3,7));    //"lo worl"

alert(stringValue.slice(-3));    //"rld"
alert(stringValue.substring(-3));    //"hello world"
alert(stringValue.substr(-3));    //"rld"
alert(stringValue.slice(3,-4));    //"lo w"
alert(stringValue.substring(3,-4));    //"hel"    
alert(stringValue.substr(3,-4));    //""

split

stringObject.split(separator,[howmany])
separator:字符串或正则表达式,从该参数指定的地方分割 stringObject。
返回一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括 separator 自身。
但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)。
例:

"2:3:4:5".split(":")    //将返回["2", "3", "4", "5"]
"|a|b|c".split("|")    //将返回["", "a", "b", "c"]
"hello".split("", 3)    //可返回 ["h", "e", "l"]
此条目发表在 javascript/jQuery 分类目录,贴了 , , , , , , 标签。将固定链接加入收藏夹。

发表评论

可用标签 : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>