【機能】
指定された文字列の一部を、別の文字列で指定された回数分で置換した文字列を返します。
【構文】
Replace(expression, find, replacewith[, start[, count[, compare]]])
| 引数 |
内容 |
| expression |
必ず指定します。置換する文字列を含む文字列式を指定します 。 |
| find |
必ず指定します。検索する文字列を指定します。 |
| replacewith |
必ず指定します。置換する文字列を指定します。 |
| start |
省略可能です。引数 expression 内の内部文字列の検索開始位置を指定します。count と共に使用してください。 |
| count |
省略可能です。置換する文字列数を指定します。この引数を省略すると、既定値の -1 が使用され、すべての候補が置換されます。start と共に使用してください。 |
| compare |
省略可能です。文字列式を評価するときに使用する文字列比較のモードを表す数値を指定します。設定する値については、次の「設定値」を参照してください。この引数を省略すると、既定値の 0 が使用され、バイナリ モードで比較が行われます。 |
引数 compare の設定値は次のとおりです。
| 定数 |
値 |
内容 |
| vbBinaryCompare |
0 |
バイナリ モードで比較を行います。 |
| vbTextCompare |
1 |
テキスト モードで比較を行います。 |
Replace 関数の戻り値は次のとおりです。
| 条件 |
Replace の戻り値 |
| expression が長さ 0 の文字列 ("") のとき |
長さ 0 の文字列 ("") |
| expression が Null 値のとき |
エラー |
| find が長さ 0 の文字列 ("") のとき |
expression のコピー |
| replacewith が長さ 0 の文字列 ("") のとき |
find がすべて削除された expression のコピー |
| start の値が expression の文字数より大きいとき |
長さ 0 の文字列 ("") |
| count が 0 のとき |
expression のコピー |
【解説】
引数 start を指定した場合、Replace 関数は、指定された位置から引数 expression の文字列の末尾までを返します。
次のコードは、Replace 関数を使って文字列を返す例です。
Dim MyString
MyString = Replace("XXpXXPXXp", "p", "Y") ' 文字列の最初から、バイナリ モードで比較を行います。"XXYXXPXXY"を返します。
MyString = Replace("XXpXXPXXp", "p", "Y", 3, -1, 1) ' 3 番目の位置からテキスト モードで比較を行います。"YXXYXXY" を返します。
【必要条件】
バージョン 2