如何查找字符串是否包含字符串列表的任何项目?

我有一个字符串和一个字符串列表:

string motherString = "John Jake Timmy Martha Stewart"; 

我想找到该字符串是否包含列表中的任何字符串,即:

 var children = new List{"John", "Mike", "Frank"}; 

所以我想知道motherString是否包含来自孩子的一个项目,即。 ‘约翰’

怎样才能解决这个问题?

我能提出的最简单的代码是:

 var hasAny = children.Any(motherString.Contains); 

如果您希望每个单词都用空格分隔,那么您可以使用:

 var hasAny = motherString.Split(new[] { ' ' }).Any(children.Contains); 

如果motherString中的单词可以被其他字符分隔,您可以像这样添加它们:

 motherString.Split(new[] { ' ', ',', ':' })