javascript substr和substring用法比較
更新時間:2009年06月01日 01:09:23 作者:
在js中substring和substr都是用來截取字符串的,那么substring和substr之間的具體區(qū)別在哪里,有沒有區(qū)別呢,下面我來給各位詳細引用一些實例來介紹這些問題
substr函數(shù)和substring函數(shù)都是用來從某個“母字符串”中提取“子字符串”的函數(shù)。但用法有些差別,下面分別介紹
substr 方法定義和用法
substr 方法用于返回一個從指定位置開始的指定長度的子字符串。
語法
stringObject.substr(start [, length ])
參數(shù) 描述
start 必需。所需的子字符串的起始位置。字符串中的第一個字符的索引為 0。
length 可選。在返回的子字符串中應包括的字符個數(shù)。
說明
如果start為負數(shù),則start=str.length+start。
如果 length 為 0 或負數(shù),將返回一個空字符串。
如果沒有指定該參數(shù),則子字符串將延續(xù)到stringObject的最后。
功能:從“母字符串”的“指定位置”開始提取“指定長度”的“子字符串”。
使用方法:
復制代碼 代碼如下:
字符串數(shù)據(jù).substr(start [,length])
start是必選項。指明要提取的“子字符串”的起始位置。字符串中的第一個字符的索引為 0。
length是可選項。指明要提取的“子字符串”中應包括的字符個數(shù)。如果 length 為 0 或負數(shù),將返回一個空字符串。如果沒有指定該參數(shù),則子字符串將延續(xù)到“母字符串”的最后。
下面的示例演示了substr函數(shù)的用法。
復制代碼 代碼如下:
母串 = "上海自來水來自海上";
子串1 = 母串.substr(2,4);
//從編號為2的字符開始,提取4個長度的子字符串。 返回值: "自來水來"
子串2 = 母串.substr(2);
//從編號為2的字符開始,到最后一個字符的子字符串。 返回值: "自來水來自海上"
復制代碼 代碼如下:
var stringObject = "hello world!";
alert(stringObject.substr(3)); // lo world!
alert(stringObject.substr(3,stringObject.length)); // lo world!
alert(stringObject.substr(3,4)); // lo w
舉例:
復制代碼 代碼如下:
var str = "0123456789";
alert(str.substring(0));------------"0123456789"
alert(str.substring(5));------------"56789"
alert(str.substring(10));-----------""
alert(str.substring(12));-----------""
alert(str.substring(-5));-----------"0123456789"
alert(str.substring(-10));----------"0123456789"
alert(str.substring(-12));----------"0123456789"
alert(str.substring(0,5));----------"01234"
alert(str.substring(0,10));---------"0123456789"
alert(str.substring(0,12));---------"0123456789"
alert(str.substring(2,0));----------"01"
alert(str.substring(2,2));----------""
alert(str.substring(2,5));----------"234"
alert(str.substring(2,12));---------"23456789"
alert(str.substring(2,-2));---------"01"
alert(str.substring(-1,5));---------"01234"
alert(str.substring(-1,-5));--------""
alert(str.substr(0));---------------"0123456789"
alert(str.substr(5));---------------"56789"
alert(str.substr(10));--------------""
alert(str.substr(12));--------------""
alert(str.substr(-5));--------------"56789"
alert(str.substr(-10));-------------"0123456789"
alert(str.substr(-12));-------------"0123456789"
alert(str.substr(0,5));-------------"01234"
alert(str.substr(0,10));------------"0123456789"
alert(str.substr(0,12));------------"0123456789"
alert(str.substr(2,0));-------------""
alert(str.substr(2,2));-------------"23"
alert(str.substr(2,5));-------------"23456"
alert(str.substr(2,12));------------"23456789"
alert(str.substr(2,-2));------------""
alert(str.substr(-1,5));------------"9"
alert(str.substr(-1,-5));-----------""
substring函數(shù)
功能:從“母字符串”中提取從“起始位置”到“結束位置”的“子字符串”。
使用方法:字符串數(shù)據(jù).substring(start,end)
start參數(shù)指明子字符串中“第一個字符”的位置。
end參數(shù)指明子字符串中“最后一個字符”的“后面一個字符”的位置。
substring函數(shù)返回一個從 "start位置" 開始 到 "end-1位置" 結束(不包含 "end位置"的字符 )的子字符串。
substring函數(shù)使用 start 和 end 兩者中的較小值作為子字符串的起始點。例如,字符串數(shù)據(jù).substring(0,3) 和 字符串數(shù)據(jù).substring(3,0) 將返回相同的子字符串。
如果 start 或 end 為 NaN 或者負數(shù),那么將其替換為0。
子字符串的長度等于 start 和 end 之差的絕對值。例如,字符串數(shù)據(jù).substring(0,3) 和 字符串數(shù)據(jù).substring(3,0) 返回的子字符串的的長度是 3。
下面的示例演示了substring函數(shù)的用法。
例
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
2)如果startIndex、endIndex 相等,則返回空串。如果startIndex 比 endIndex 大,則提取子串之前,調換兩個參數(shù)。即stringObject.substring(startIndex,endIndex)等同于stringObject.substring(endIndex,startIndex)
復制代碼 代碼如下:
var stringObject = "hello world!";
alert(stringObject.substring(3,3)); // 空串
alert(stringObject.substring(3,7)); // lo w
alert(stringObject.substring(7,3)); // lo w
復制代碼 代碼如下:
母串 = "上海自來水來自海上";
子串 = 母串.substring(2,4);
//從“編號為2”的字符開始,到“編號為(4-1)”的字符結束的子字符串。返回值: "自來"
substr()可以代替substring()來使用,從上面代碼看出 stringObject.substr(3,4) 等同于stringObject.substring(3,7)
您可能感興趣的文章:
- JS 截取字符串substr 和 substring方法的區(qū)別
- SQL Substring提取部分字符串
- sqlserver substring函數(shù)使用方法小結
- Mysql字符串截取函數(shù)SUBSTRING的用法說明
- js中substr,substring,indexOf,lastIndexOf的用法小結
- JAVA中字符串函數(shù)subString的用法小結
- JavaScript截取字符串的Slice、Substring、Substr函數(shù)詳解和比較
- mysql截取的字符串函數(shù)substring_index的用法
- 淺談Javascript中substr和substring的區(qū)別
相關文章
HTML+CSS+JavaScript實現(xiàn)放大鏡效果
這篇文章主要為大家詳細介紹了HTML+CSS+JavaScript實現(xiàn)放大鏡效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-07-07
JSONP獲取Twitter和Facebook文章數(shù)的具體步驟
這篇文章主要介紹了JSONP獲取Twitter和Facebook文章數(shù)的方法,需要的朋友可以參考下2014-02-02
CodeMirror2 IE7/IE8 下面未知運行時錯誤的解決方法
最近用CodeMirror2作后臺的模板編輯器,在IE9、Firefox下面沒有問題。到了IE7、IE8下面,textarea里面的代碼就顯示不出來了。搜索了好多,終于找到原因2012-03-03

