C# 正则替换 Regex.Replace

假设一个邮件列表包含一些姓名,这些姓名有时包括称谓(Mr.、Mrs.、Miss 或 Ms.)以及姓氏和名字。如果你从列表中生成信封标签时不希望包括称谓,则可以使用正则表达式移除称谓,如以下示例所示。

首先添加引用:

using System.Text.RegularExpressions;

测试代码如下:

class Program
{
   static void Main(string[] args)
   {
      string pattern = "(Mr\\\\.? |Mrs\\\\.? |Miss |Ms\\\\.? )";  
      //正则表达式模式 (Mr\\.? |Mrs\\.? |Miss |Ms\\.? ) 可匹配任何“Mr”、“Mr.”、“Mrs”、“Mrs.”、“Miss”、“Ms”或“Ms.”
      string[] names = { "Mr. Henry Hunt", "Ms. Sara Samuels",
                        "Abraham Adams", "Ms. Nicole Norris" };
     foreach (string name in names)
         Console.WriteLine(Regex.Replace(name, pattern, String.Empty));
     //对 Regex.Replace 方法的调用会将匹配的字符串替换为 String.Empty;换句话说,将其从原始字符串中移除。
        }
    }

输出为:

Henry Hunt

Sara Samuels

Abraham Adams

Nicole Norris

你可能感兴趣的:(C#,编程,C#,C#正则,Replace替换)