Как узнать, содержит ли строка какие-либо элементы списка строк? - PullRequest
16 голосов
/ 14 февраля 2011

У меня есть строка и список строк:

string motherString = "John Jake Timmy Martha Stewart";

и я хочу узнать, содержит ли эта строка какую-либо из строк в списке, например:

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

Итак, я хочу выяснить, содержит ли motherString один из элементов дочерних элементов, т.е. 'John'

Как лучше всего это сделать?

1 Ответ

35 голосов
/ 14 февраля 2011

Самый простой код, который я мог бы придумать, был бы:

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

Если вы ожидаете, что каждое из слов будет разделено пробелом, вы можете использовать это:

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

Если слова в motherString могут быть разделены другими символами, вы можете добавить их следующим образом:

motherString.Split(new[] { ' ', ',', ':' })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...