説明
Replace は、指定された部分文字列を別の文字列で指定された回数だけ置換し、その結果の文字列を返します。
多重定義
Replace (対象文字列, 検索文字列, 置換文字列)
Replace (対象文字列, 検索文字列, 置換文字列, 開始位置)
Replace (対象文字列, 検索文字列, 置換文字列, 開始位置, 回数)
Replace (対象文字列, 検索文字列, 置換文字列, 開始位置, 回数, 大文字小文字の区別)
引数
置換文字列は、findString を置換する文字列。
開始位置は、検索文字列で指定された文字列の検索を対象文字列の文字列内のどこから開始するかを表す数値でこの引数はオプションです。省略すると、1 を指定したと見なされます。
回数は、部分文字列を置換する回数で、この引数はオプションです。省略すると、デフォルト値の -1 になります。これは、置換できる部分文字列をすべて置換するという意味です。
大文字小文字の区別は、部分文字列の評価に使用する比較方法を表す数値で、この引数はオプションです。
省略すると、大文字と小文字を区別して比較されます。
アクション
Replace は、指定された部分文字列を別の文字列で指定された回数だけ置換し、その結果の文字列を返します。また、文字列内で置換を開始する位置を指定することもできます。そうすると、指定した位置から始まる文字列が返されます。
用途
文字列中の部分文字列を別の文字列で一括して置換する場合に使用します。
例
この例では、対象文字列を次のテキスト文字列とします。“Monday is my day off.Can we meet next Monday?”
Replace (inputString, "Monday", "Wednesday")
“Wednesday is my day off.Can we meet next Wednesday?”が返されます。
Replace (inputString, "Monday", "Wednesday", 23)
“Can we meet next Wednesday?”を返します。置換は、元の inputString の先頭から 23 文字目から開始されます。返される文字列は、元の文字列のうち、この置換対象となった部分です。
Replace (inputString, "Monday", "Wednesday", 1, 1)
“Wednesday is my day off.Can we meet next Monday?”を返します。置換は、元の inputString の 1 文字目から開始され、1 回だけ行われます。したがって、元の文字列の 1 か所だけが置換された文字列が返されます。
Replace (inputString, "monday", "Wednesday", 1, -1, 0)
置換は行われずに inputString と同じ文字列が返されます。大文字と小文字を区別する比較では、“monday”と一致する文字列が見つからないからです。
Replace (inputString, "monday", "Wednesday", 1, -1, 1)
inputString の文字列中にある“Monday”がどちらも“Wednesday”に置換されます。つまり、“Wednesday is my day off.Can we meet next Wednesday?”が返されます。
コメント
Replace 関数の戻り値は、開始位置で指定された位置から始まり、対象文字列の末尾で終わる文字列を対象として、指定された部分文字列を置換した文字列です。元の文字列を始めから終わりまでコピーしたものではありません。