JDK 中的String 对象的substring方法有以下两种重载形式:
(1) public String substring(int beginIndex)
返回一个新的字符串,它是此字符串的一个子字符串。该子字符串始于指定索引处的字符,一直到此字符串末尾。例如:
"unhappy" .substring(2) returns "happy"
参数:
beginIndex
- 开始处的索引(包括)。
(2) public String substring(int beginIndex,int endIndex)
返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的beginIndex处开始,一直到索引
endIndex - 1 处的字符。因此,该字符串的长度为 endIndex - beginIndex
示例:
"hamburger".substring(4,8) returns "urge"
"smiles".substring(1,5) returns "mile"
-
参数:
-
beginIndex
- 开始处的索引(包括)。 -
endIndex
- 结束处的索引(不包括)。
javaScript 的 string 对象
strvar.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); // 返回Spain。 }
可见 jdk和javascript 的string 对象的substring()取值方式一样,但jdk有两种重载形式,而javascript的start ,end可以倒过来.
stringvar .substr( start [,length])
参数:
start如果没有指定该参数,则子字符串将延续到 stringvar 的最后。 如果 length 为 0 或负数,将返回一个空字符串。
下面的示例演示了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"。 }
SQL的substr(t.reportyear, 1,2)函数:
reportyear的值为2009,substr(t.reportyear, 1,2)值20
reportyear的值为2009,substr(t.reportyear, 1)值2009
reportyear的值为2009,substr(t.reportyear, 0,2)值也为20javascipt 的substr()方法和SQL的substr()函数不同在于,javascipt 的substr方法 从零开始,SQL的substr()函数从1开始