StringReplace()

 StringReplace()関数は、指定した文字列の一部分(=部分文字列)を置換するために使用します。

 StringReplace()関数は、以下のように定義されています。

int StringReplace(
string& str,
const string find,
const string replacement
);

 各引数の意味は、以下のとおりです。

  • string& str
    置換したい部分文字列を含む文字列を指定します。
  • const string find
    置換される部分文字列を指定します。
  • const string replacement
    置換する文字列を指定します。

戻り値

 StringReplace()関数が正常に実行されると、置換された部分文字列の個数が返されます。

 エラーが生じた場合は、「-1」が返されます。

 エラーコードを取得したい場合は、GetLastError()関数を使用します。

注意点

 StringReplace()関数が正常に実行されたが、置換が行われなかった場合(=置換される部分文字列が見つからなかった場合)は、が返されます

 エラーは、以下の場合に生じます。

  • 第一引数又は第二引数に間違った値を指定した場合(=文字列が空、又は初期化されていない(StringInit()関数を参照))
  • 置換を行うのに必要なメモリーが不足している場合

 なお、StringInit()関数の詳細については「こちら」を参照してください。

具体例


#property strict

#property show_confirm

void OnStart()
{
  string text =
  "The quick brown fox jumped over the lazy dog.";
  
  //「quick」を「slow」に置換 
  int replaced = StringReplace(text,"quick","slow");
  
  //「brown」を「black」に置換
  replaced += StringReplace(text,"brown","black");
  
  //「fox」を「bear」に置換 
  replaced +=StringReplace(text,"fox","bear"); 
  
  //置換処理後の文字列を出力
  Print("Replaced: ", replaced,". Result = ",text); 
  
  //以下のように出力される 
  /*Replaced: 3. Result = The slow black bear jumped over the lazy dog.*/
}

関連ツール

インジケーターつくーる

インジケーターつくーる
MQL言語の学習ができ、裁量トレーダーもインジケーター開発が可能に
MQL言語の学習ができ、裁量トレーダーもインジケーター開発が可能に?|?fx-on.com

GogoJungleで購入する

 プログラミングの知識がなくても、ほぼマウスで選ぶだけで独自のインジケーターを作成することができるツールです。

 以下は、「インジケーターつくーる」の紹介動画です。

EAつくーる

『EAつくーる』
MQL言語の学習ができ、裁量トレーダーもEA開発が可能になる!
MQL言語の学習ができ、裁量トレーダーもEA開発が可能になる!?|?fx-on.com

GogoJungleで購入する

 MT4で作動するEAをプログラミング不要で作成するためのツールです。

特 徴

  • インジケーターを組み合わせることで、EAを簡単に作ることができます。
    インジケーターは、MT4に標準で装備されているもののほか、市販のものも使用することができます
  • EAはmq4ファイルで作成されるので、mqlの学習にも役立ちます。
  • 作成したEAの著作権は本ツールを使用してEAを作成した本人に属し、販売なども自由です
  • シンプルなロジックのEAから高度なオプション付きのEAまで、簡単に作成することができます。

セット

EAつくーる&インジケーターつくーるセット販売
EAつくーる&インジケーターつくーるセット販売
EAつくーる&インジケーターつくーるセット販売?|?fx-on.com

GogoJungleで購入する

 「インジケーターつくーる」と「EAつくーる」をそれぞれ単品で購入すると、合計34,600円(税込)必要となるところ、両者をセット購入することによって、13%OFFの29,800円(税込)で購入することができます。