Js的substring和C#的Substring的作用都是從一個字符串中截取出一個子字符串,但它們的使用方法卻有很大的不同,下邊我們來比較看看:
Js的substring
語法:
程序代碼
String.substring(start, end)
說明:
返回一個從start開始到end(不包含end)的子字符串。
示例:
程序代碼
var str="abcdefgh";
document.write(str.substring(0,1));//return:a
document.write(str.substring(2,5));//return:cde
document.write(str.substring(7,8));//return:h
C#的Substring
語法:
程序代碼
String.Substring(int startIndex)
String.Substring(int startIndex, int length)
說明:
返回一個從startIndex開始到結束的子字符串,或返回一個從startIndex開始,長度為length的子字符串。
示例:
程序代碼
string str = "abcdefgh";
Response.Write(str.Substring(0,1));//return:a
Response.Write(str.Substring(2,3));//return:cde
Response.Write(str.Substring(7,1));//return:h
Response.Write(str.Substring(7));//return:h
Response.Write(str.Substring(10));//error:startIndex 不能大于字符串長度。
Response.Write(str.Substring(7,10));//error:索引和長度必須引用該字符串內的位置。
經過上邊的說明對它們的使用應該有個比較清楚的認識了,但對Js的substring還有幾點要說明:
1.start不一定就是第一個參數,end也不一定就是第二個參數,substring(3,1)時,開始位置是1,結束位置是3;
2.當要返回的子字符串是從開始位置到結束時,end的值必須大于字符串的長度(即大于或等于字符串的索引),如上邊的str.substring(7,8),按照索引從0開始算的話end的最大值為7,但這邊卻用8,當然,使用大于8的數返回的結果也是一樣的,這點比較有意思;
js的Substr
語法:
程序代碼
stringObject.substr(start,length)
說明:
在字符串中抽取從 start 下標開始的指定數目的字符。
start 必需。要抽取的子串的起始下標。必須是數值。如果是負數,那么該參數聲明從字符串的尾部開始算起的位置。也就是說,-1 指字符串中最后一個字符,-2 指倒數第二個字符,以此類推。
length 可選。子串中的字符數。必須是數值。如果省略了該參數,那么返回從 stringObject 的開始位置到結尾的字串。
示例:
程序代碼
<script type="text/javascript"> var str="Hello world!" document.write(str.substr(3)) </script>
輸出:
lo world!
新聞熱點
疑難解答