Core JavaScript 1.5 Reference:Global Objects:String:substr
出典: MDC
目次 |
[編集] 構文
文字列内における文字を、指定した位置から指定した数だけ返します。
| String のメソッド | |
| 実装されたバージョン: | JavaScript 1.0, JScript 3 |
| ECMA バージョン: | 無し。しかし、ECMA-262 第3版 には、substr と類似のセマンティクスを取り上げている非標準のセクションがあります。 |
[編集] 構文
var sub = string.substr(start[, length]);
[編集] パラメータ
-
start - 文字を取り出す位置( 0 から文字列の長さ以下までの整数)。
-
length - 取り出す文字の数。
[編集] 詳細
start は文字のインデックスです。一番最初の文字のインデックスは、 0 で、最後の文字のインデックスは、文字列の長さから 1 を引いた数です。substr は、start から文字の取り出しを開始し、length 個の文字を集めます(start から文字列の最後までの長さが指定した length より短かった場合は、length より少ない数の文字を返すでしょう)。
start が正の数かつ文字列の長さ以上である場合、substr は空の文字列を返します。
start が負の数である場合、substr はそれを文字列の最後から数えた文字のインデックスとして使用します。start が負の数かつ start の絶対値が文字列の長さより大きい場合、substr は開始インデックスとして 0 を使用します。注: start の引数に負の数の値を指定することは、Microsoft JScript [1] ではサポートされません【訳注: JScript で start に負の数を指定した場合、正の数として扱われます】。
length が 0 あるいは負の数の場合、substr は空の文字列を返します。length が省略された場合、start から文字列の最後までの文字を取り出します。
[編集] 例
[編集] 例: substr メソッドの使用
以下のスクリプトを考えてください。:
// print(出力) 関数が定義されていると仮定してください。
var str = "abcdefghij";
print("(1,2): " + str.substr(1,2));
print("(-2,2): " + str.substr(-2,2));
print("(1): " + str.substr(1));
print("(-20, 2): " + str.substr(-20,2));
print("(20, 2): " + str.substr(20,2));
このスクリプトは以下のような結果を表示します:
(1,2): bc (-2,2): ij (1): bcdefghij (-20, 2): ab (20, 2):