c++ builder XE4, 10.2 Tokyo / String > 指定の文字以降を取得する
3569 ワード
動作確認
C++ Builder XE4
Rad Studio 10.2 Tokyo Update 2 (追記: 2017/12/27)
訂正前 > 値渡しによるコピーが発生
Unit1.cpp
static String getStringFrom(String srcStr, String keyword)
{
int pos = srcStr.Pos(keyword);
if (pos < 0) {
return L""; // error
}
return srcStr.SubString(pos, MAXINT); // MAXINT: until last
}
(MAXINTが最後まで、というのはソースリーディング的にはよくない。)
getStringFrom(L"AAA,BBB,CCC,DDD", L"CCC");
の結果は
L"CCC,DDD"
となる。
訂正
@yuba さんのコメントをもとに以下のように訂正します。
Unit1.cpp
static String getStringFrom(const String &srcStr, const String &keyword)
{
int pos = srcStr.Pos(keyword);
if (pos < 0) {
return L""; // error
}
return srcStr.SubString(pos, MAXINT); // MAXINT: until last
}
関数の使用コードはそのままです。
Author And Source
この問題について(c++ builder XE4, 10.2 Tokyo / String > 指定の文字以降を取得する), 我々は、より多くの情報をここで見つけました https://qiita.com/7of9/items/43992d119a1b15a6450a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .