StringReplace - C++ Builder

C++ Builder 参考手册 ➙ System::Sysutils ➙ StringReplace


把字符串当中的子字符串替换为另一个字符串

头文件:#include
命名空间:System::Sysutils
函数原型:

System::UnicodeString __fastcall StringReplace(
    const System::UnicodeString Source,
    const System::UnicodeString OldPattern,
    const System::UnicodeString NewPattern,
    TReplaceFlags Flags);

参数:

  • Source:从这个字符串里面进行查找和替换;
  • OldPattern:如果找到这个字符;
  • NewPattern:替换为这个字符串;
  • Flags:集合类型,可以包含以下一个或多个选项:
    rfReplaceAll:如果包含这个选项,替换所有找到的 OldPattern;
    rfIgnoreCase:如果包含这个选项,忽略大小写;

返回值:

  • 把 Source 字符串里面的 OldPattern 替换为 NewPattern,函数返回替换之后的字符串;
  • 参数 Source 不会被修改,修改之后的字符串需要通过函数返回值获取;
  • 如果 Flags 里面包含 rfReplaceAll 替换所有找到的字符串,否则只替换第一个;
  • 如果 Flags 里面包含 rfIgnoreCase 忽略大小写,使用 UNICODE 规则,不限于英语;
  • 这个函数只扫描一次原字符串 Source,如果替换之后的字符串里面又可以找到 OldPattern 也不处理了,
    例如:把 "abcdcdef" 里面的 "bcd" 替换为 "cab",原字符串里面只能找到 1 个 "bcd",替换之后为 "acabcdef"
    在替换之后的 "acabcdef" 里面又能找到 "bcd" 也不处理了;
  • 更复杂的替换可以使用 System::Regularexpressions::TRegEx::Replace。

例子:把 AbcdCdef 里面所有的 Bcd 全部替换为 Cab,忽略大小写

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    UnicodeString s = StringReplace(L"AbcdCdef", L"Bcd", L"Cab", TReplaceFlags()<Lines->Add(s);
}

运行结果:ACabCdef

运行结果

相关:

  • System::Sysutils::StringReplace
    System::Sysutils::ReplaceDate
    System::Sysutils::ReplaceTime
  • System::Sysutils::WrapText
  • System::Sysutils::AnsiPos
  • System::Sysutils::AnsiStrPos
  • System::Sysutils::AnsiStrScan
  • System::Sysutils::AnsiStrRScan
  • System::Sysutils::BytesOf
  • System::Sysutils::WideBytesOf
  • System::Sysutils::PlatformBytesOf
  • System::Sysutils::StringOf
  • System::Sysutils::WideStringOf
  • System::Sysutils::PlatformStringOf
  • System::Sysutils::ByteLength
  • System::Sysutils::CharLength
  • System::Sysutils::StrCharLength
  • System::Sysutils::AnsiLastChar
  • System::Sysutils::AnsiStrLastChar
  • System::Sysutils::CharToElementIndex
  • System::Sysutils::CharToElementLen
  • System::Sysutils::ElementToCharIndex
  • System::Sysutils::ElementToCharLen
  • System::Sysutils::TEncoding
  • System::Sysutils
  • System::Strutils::AnsiReplaceStr
  • System::Strutils::AnsiReplaceText
  • System::Strutils::ReplaceStr
  • System::Strutils::ReplaceText
  • System::Strutils
  • System::Regularexpressions::TRegEx::Match
  • System::Regularexpressions::TRegEx::Replace
  • System::Regularexpressions

C++ Builder 参考手册 ➙ System::Sysutils ➙ StringReplace

你可能感兴趣的:(StringReplace - C++ Builder)