如何确定一个字符串是否包含字符串列表中的任何项?

13 浏览
0 Comments

如何确定一个字符串是否包含字符串列表中的任何项?

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

string motherString = "John Jake Timmy Martha Stewart";

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

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

那么我想知道最佳的解决方法是什么?

0
0 Comments

问题的出现原因:有一个字符串和一个字符串列表,需要判断字符串中是否包含列表中的任意一个字符串。

解决方法:可以根据不同的情况使用不同的方法来解决这个问题。

方法一:

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

这个方法适用于字符串中的单词是以空格分隔的情况。

方法二:

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

这个方法适用于字符串中的单词是以空格分隔的情况,同时也适用于单词之间可能被其他字符(如逗号、冒号等)分隔的情况。

方法三(忽略大小写):

var hasAny = children.Any(c => motherString.Contains(c, StringComparison.OrdinalIgnoreCase));

这个方法在判断字符串是否包含列表中的任意一个字符串时,忽略大小写。

以上就是如何找到一个字符串中是否包含一个字符串列表中的任何项的方法。这些方法简单而实用,可以帮助我们解决这个问题。

0