始める前に、 js の添字 (配列要素/文字列内の文字の添字) を確認してみましょう:
添え字は常に 0 から数え始めます (例:
)
var arr = [1,2,3];//配列の長さは 3 で、要素の添え字は 0, 1, 2
arr[0] = 1,arr[1]=2..
文字列も同様です: var s = "hello"; //文字列の長さは 5、最初の文字 'h' の添字は 0 など
String.substring(): 文字列
の部分文字列を返すために使用されます。
使用法は次のとおりです: string.substring(from, to)
ここで、 from は、元の文字列
内で削除される部分文字列の最初の文字の位置を指します。
to は、削除される部分文字列の最後の文字を指します (このパラメータを追加する必要はありません)
以下は String.substring() の例です:
1. string.substring(from): これは、元の文字列の from 位置から末尾までをインターセプトすることと同等です。
var s = "hello"; s.substring(1);//就是从下标为1的字符(这里是'e')开始起到字符串末尾全部截取,最终获得子串"ello"
2. string.substring(from, to): from の位置から to-1 の位置までのインターセプト
var s = "hello"; s.substring(1,3);//相当于从位置为1的字符截取到位置为2的字符,得到子串为:"el"
String.substr(): この関数も部分文字列を抽出するものですが、上記の String.substring() とは異なります。
使用法は次のとおりです: string.substr(start, length)
start: 部分文字列
をインターセプトする開始添え字を指します。
length: 部分文字列の長さの切片 (省略可能)
1. string.substr(start, length): 最初に例を示します:
var s = "hello"; s.substr(1,3);//从下标为1的字符开始截取3个字符长度,最后子串为:ell
2 つの特別な状況を追加しました:
a. 2 番目のパラメータが残りの文字長を超えています
var s = "hello"; s.substr(1,7)//这种情况下默认从,start位置到原字符串末尾,即返回:"ello"
b. 最初のパラメータは負の数です
この場合、文字列の終わりから数えて、-1 は文字列の最後の文字を指し、-2 は最後から 2 番目の文字を指します...というように続きます
var s = "hello"; s.substr(-3,2)//即从倒数第三个字符开始起截取2个长度,获得:"ll"
2. string.substr(start): は長さパラメーターを取りません。デフォルトは開始位置から最後までのインターセプトを参照します。文字列 の
var s = "hello"; s.substr(3)//"lo"
上記は、js における substring と substr の違いと使い方について詳しく紹介したもので、以前の関連記事と合わせて学習することができます。