文字列から任意の文字を取得するメソッド
【開発環境】
OS:Win11(64ビット)
VSCode1.72.2、
クロム
【slice ・ substring メソッド】→開始インデックス~終了インデックスで指定
String オブジェクトの slice メソッド
→対象の文字列の中の指定した位置にある部分文字列を新しい文字列として返しますメソッド
・書式
文字列.slice(開始インデックス[, 終了インデックス])
String オブジェクトのsubstring メソッド
→slice メソッドと同じ
・書式
文字列.substring(開始インデックス[, 終了インデックス])
【slice とsubstringの違い】
インデックスとして負の値を指定した場合の挙動と、開始インデックスが終了インデックスよりも大きい場合の挙動です。
【サンプル】
・sliceの場合
let address = '東京都港区芝公園';
let sub;
sub = address.slice(3, 5);
console.log(sub);
港区
sub = address.slice(3);
console.log(sub);
港区芝公園
//引数が負の場合
sub = address.slice(-3, -1);
console.log(sub);
>芝公
//混合の場合
sub = address.slice(-5, 5);
console.log(sub);
> 港区
//終了インデックスと開始インデックスが同じだった場合
sub = address.slice(3, 3);
console.log(sub);
>空白
//終了インデックスが開始インデックスより小さい場合
sub = address.slice(3, 2);
console.log(sub);
>空白
・substringメソッドの場合
let address = 'JavaScript';
let sub;
//インデックスが整数の場合
sub = address.substring(4, 7);
console.log(sub);
> Scr
sub = address.substring(4);
console.log(sub);
> Script
//混合インデックス
sub = address.substring(-3, 4);
console.log(sub);
> Java
後は、sliceメソッドと同じ
インデックスの例
【substr メソッド】
対象の文字列に対して開始位置と文字数を指定して部分文字列を取得する。
・書式
文字列.substring(開始インデックス[, 文字数])
サンプル
let a = 'いろはにほへと';
let s;
s = a.substr(4, 2);
console.log(s);
>ほへ
s = a.substr(3);
console.log(s);
> にほへと
//それ以外に、インデックスに負の値を指定する事もできる
s = a.substr(-3, 2);
console.log(s);
> ほへ
//文字数に0または負の値を指定する
文字数に 0 または負の値を指定すると文字数が 0 の部分文字列を取得することになるためいずれも空文字が返ります
s = a.substr(3, 0);
console.log(s);
空白
※コメント投稿者のブログIDはブログ作成者のみに通知されます