如何:使用正则表达式进行搜索和替换 (C++/CLI)

下面的代码示例演示如何使用正则表达式类 Regex 执行搜索和替换。 可通过使用 Replace 方法完成此任务。 所用的版本将两个字符串作为输入:要修改的字符串和要插入的字符串,后者取代与为 Regex 对象提供的模式相匹配的节(如果有)。

此代码用下划线 (_) 替换字符串中的所有数字,然后用空字符串替换下划线,从而有效地将其移除。 执行一个步骤就可以得到相同的效果,但为了演示的目的,在此使用两个步骤。

示例

// regex_replace.cpp
// compile with: /clr
#using <System.dll>
using namespace System::Text::RegularExpressions;
using namespace System;

int main()
{
   String^ before = "The q43uick bro254wn f0ox ju4mped";
   Console::WriteLine("original  : {0}", before);

   Regex^ digitRegex = gcnew Regex("(?<digit>[0-9])");
   String^ after = digitRegex->Replace(before, "_");
   Console::WriteLine("1st regex : {0}", after);

   Regex^ underbarRegex = gcnew Regex("_");
   String^ after2 = underbarRegex->Replace(after, "");
   Console::WriteLine("2nd regex : {0}", after2);

   return 0;
}

请参见

其他资源

.NET Framework 正则表达式

编程在Visual C++的.NET