ホームページ > 記事 > ウェブフロントエンド > JavaScript 関数 replace_javascript スキルの深い理解
replace 関数は 2 つのパラメータを受け入れます。最初のパラメータは文字列または正規表現です。最初のパラメータは文字列または関数も受け入れることができます。
まず第一に、最初のパラメータが文字列の場合、「私は男の子です」.replace("boy","girl") と言う必要はなくなり、出力は次のようになります: "私は女の子です" 。ここで話したいのは、最初のパラメータが正規の場合です。正規表現の場合、置換動作はまずグローバルかどうかに基づいて決定されます (global//g)。all の場合はすべてが置換され、非グローバルの場合は最初に一致した文字列のみが置換されます。例:
1: 2 番目のパラメータは文字列です:
特別なマーカー $ が定期的に交換されることが合意されています:
1.$i (i:1-99): 左から右に正規部分表現と一致するテキストを表します。
2.$&: 正規表現に一致する全文を示します。
3.$`(`:スキルキーの切り替え): 一致する文字列の左側のテキストを示します。
4.$'(‘:single quote): 一致する文字列の右側のテキストを示します。
5.$$: $ 送金を意味します。
ここにいくつかのデモがあります:
2: 2 番目のパラメーターは関数です:
JavaScript1.2で実装されているECMAScript3では、replaceメソッドを実行するたびに関数が呼び出され、その戻り値が新しい値として使用されることを推奨します。交換。
関数パラメータの要件:
1. 最初のパラメータは各一致の全文 ($&) です。
2. 中央のパラメータは部分式の一致する文字列です。($i (i:1-99))
3. 最後から 2 番目のパラメータは、一致するテキスト文字列 Location の一致する添え字です。
4. 最後のパラメータは文字列そのものを表します。
この記事で置換の力について述べようとしているのは、理論的なものはすべて無味乾燥なものです。
1: 文字列の最初の文字を大文字にします:
出力: 私は男の子です!
2:「張三56点、李斯74点、王武92点、趙劉84点」という文字列の得点を抽出して集計し、平均点を計算し、各人の平均得点差を出力します。
JavaScript の replace 関数と規則性の高度なアプリケーションを組み合わせると、JavaScript の置換によってさらに大きな力がもたらされます。ここでは高度なアプリケーションの規則性の主張については触れません。
出典: http://www.cnblogs.com/whitewolf/