如何分割仅由空格分隔的姓名列表(包含头衔和姓氏)

本文关键字:列表 包含头 空格 何分割 分割 分隔 | 更新日期: 2023-09-27 18:17:33

我有一个文本blob,我需要拆分其中包含的标题和姓氏列表。它们都用空格分隔,根本没有回车。

例如:

史密斯先生约翰逊先生约翰逊夫人史密斯女士等等等等

我需要将它们分解成单独的名称,这样我就有了如下的内容

[0] =史密斯先生
[1]约翰逊先生
[2]约翰逊夫人
[3] =史密斯女士

任何帮助都将非常感激。

我正在使用。net框架c#(只是以防对某些人有用)。

如何分割仅由空格分隔的姓名列表(包含头衔和姓氏)

我会试试

var result = Regex.Split(input, @" (?=Mr'b|Mrs'b|Ms'b)", RegexOptions.None);

如果每个头衔确实是"Mr","Mrs"或"Ms"中的一个。这种方法允许使用很多不寻常的姓氏,但需要提前知道每个头衔。点击ideone.com查看

使用以下

string[] parts =
  Regex.Matches(myarray[0], "([^'s]*'s[^'s]*)(?:'s |$)")
  .Cast<Match>()
  .Select(m => m.Groups[1].Value)
  .ToArray();