JavaScript では、部分文字列の抽出は主に、Slice、Substring、Substr の 3 つのメソッドのいずれかを使用します。
// slice // 语法: string.slice(start [, stop]) "Good news, everyone!".slice(5,9); // 'news' // substring // 语法: string.substring(indexA [, indexB]) "Good news, everyone!".substring(5,9); // 'news' // substr // 语法: string.substr(start [, length]) "Good news, everyone!".substr(5,4); // 'news'
3 つの方法のうち、開始インデックス パラメーターとオプションの終了インデックス (または長さ) パラメーターを入力します。
しかし、いくつかの重要な点で異なります:
1.substr() メソッドは、指定された位置から指定された数の文字を抽出します。
param: start は文字の抽出を開始する位置インデックス、length は抽出された文字の数と長さです。
return: 新しい文字列。 先頭から始まる長さの文字。
最新のブラウザでは、文字列の末尾から抽出される文字数を示す開始インデックス パラメータを負の数にすることができます。ただし、IE8 以下のブラウザでは、最小開始インデックスパラメータは 0 から計算されます。 [substr は Web ブラウザーの追加の ECMAScript 機能です。開始インデックスが負の値の場合は使用しないことをお勧めします]
var str = "abcdefghij"; console.log("(1): " + str.substr(1)); // (1): bcdefghij console.log("(1,2): " + str.substr(1,2)); // (1,2): bc console.log("(-3): " + str.substr(-3)); // (-3): hij console.log("(-3,2): " + str.substr(-3,2)); // (-3,2): hi console.log("(20, 2): " + str.substr(20,2)); // (20, 2): console.log("(-20, 2): " + str.substr(-20,2)); // (-20, 2): ab // ie8及以下 console.log("(-3): " + str.substr(-2)); // (-20, 2): hij console.log("(-3, 2): " + str.substr(-2)); // (-20, 2): ab
2.substring() メソッドは、あるインデックスと別のインデックスの間の文字列のサブセットを抽出するために使用されます。 、または文字列の終わりまで。
param:indexA、indexB 2 つのパラメーターの値の範囲は、0 から文字列の長さまでの整数です。
return: 小さいインデックス位置の文字を含み、大きいインデックス位置の文字を除く、小さいインデックスから大きいインデックスまでの新しい文字列を返します。
部分文字列のパラメータは可逆的であり、常に小さなパラメータ値で始まり、大きなパラメータ値で終わります。 引数が0またはNaN未満の場合は0として扱われ、引数が文字列の長さより大きい場合は文字列の長さの値として扱われます。
// assumes a print function is defined var anyString = "Mozilla"; // Displays "Moz" console.log(anyString.substring(0,3)); console.log(anyString.substring(3,0)); // Displays "lla" console.log(anyString.substring(4,7)); console.log(anyString.substring(7,4)); // Displays "Mozill" console.log(anyString.substring(0,6)); // Displays "Mozilla" console.log(anyString.substring(0,7)); console.log(anyString.substring(0,10));
3.slice の一部を抽出します。弦。
param: beginSlice は文字位置インデックスの抽出を開始します。負の値の場合は、(sourceLength-beginSlice) と見なされます。つまり、文字列から始まる位置です。 endSlice は文字の位置インデックスを終了します。省略した場合は抽出を終了します。負の場合は、(sourceLength-endSlice) として扱われます。
return: start で始まり (start を含む) end で終わる (end を除く) 新しい文字列を返します。
すべてのパラメータは負の値にすることができます。インデックスが負の場合、文字列の末尾からカウントされます。
以上がJavaScriptの3つのインターセプト文字列関数の使い方と違いの比較例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。