Replace関数

 ある文字列を別の文字列の中から探し、見つかったものをさらに別の文字列に置き換えた結果を返します。

使用例

表記例出力例説明
Replace("ABCあいうABCあいうABC","ABC","XYZ")XYZあいうXYZあいうXYZ「ABC」という文字列がすべて「XYZ」に置き換えられます
Replace("ABCあいうABCあいうABC","ABC","XYZ",4)あいうXYZあいうXYZ4番目の引数で開始位置を指定することができます。このとき開始位置より前の文字はそもそも返されませんので注意してください
Replace("ABCあいうABCあいうABC","ABC","XYZ",1,2)XYZあいうXYZあいうABC5番目の引数で置き換える文字列の数を指定できます。先頭から順に指定した数だけ置き換えられます
Replace("ABCあいうABCあいうABC","abc","xyz")xyzあいうxyzあいうxyz特に指定しない限り大文字と小文字、全角と半角、ひらがなとカタカナは区別されません(同一視されます)
Replace("ABCあいうABCあいうABC","abc","xyz",1,-1,0)ABCあいうABCあいうABC6番目の引数0は大文字と小文字、全角と半角、ひらがなとカタカナは区別する(同一視しない)ことを表します。また、5番目の引数-1はみつかった全ての文字列を置き換える(置換回数∞)ことを表します(ABCとabcが区別されるので結果的に置き換えは生じませんが)
Replace("ABCあいうABCあいうABC","abc","xyz",1,-1,1)xyzあいうxyzあいうxyz6番目の引数1は大文字と小文字、全角と半角、ひらがなとカタカナは区別しない(同一視する)ことを表します。

書式

Replace(文字列,検索対象文字列,置換後文字列[,開始位置,置換回数,比較モード])

 開始位置より前の文字列はそもそも返されませんので、より正確に表すと(置換開始位置ではなく)文字列の取得開始位置となります。
 置換回数を省略するか、-1とすると、見つかったすべての文字列が置き換えられます。比較モードを指定した場合は置換回数を省略できず明示する必要がありますので、見つかったすべての文字列を置き換えるときは-1とします。
 比較モードとして指定できる値と意味は次のとおりです。

比較モード意味
-1Option Compare ステートメントの設定により比較
0バイナリモードで比較(大文字と小文字、全角と半角、ひらがなとカタカナは区別する(同一視しない))
1テキストモードで比較(大文字と小文字、全角と半角、ひらがなとカタカナは区別しない(同一視する))
2データベースの情報に基づいて比較

備考

 1種類の文字列しか置き換えできませんので、2種類以上の文字列を一括して変換しようとする場合は関数をネストして使う必要があります。