2011-02-14 164 views
14

我有一個字符串,字符串列表:如何查找字符串是否包含任何字符串列表項?

string motherString = "John Jake Timmy Martha Stewart"; 

,我想找到,如果該字符串包含在列表,即任何字符串:

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

因此,我想搞清楚如果motherString包含來自子項的其中一項,即。 'John'

這將是怎麼回事?

+2

將母親中的所有單詞字符串被空格分隔?如果有一個孩子項目「John」,motherString包含「Johnathan」,你想要返回成功嗎? – 2011-02-14 00:32:03

+0

不,我想要完全匹配 – 2011-02-14 00:36:36

回答

33

我能想出的最簡單的代碼將是:

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

如果你希望每個詞用空格分隔,那麼你可以使用這個:

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

如果motherString中的單詞可能會被其他字符分隔,您可以像這樣添加它們:

motherString.Split(new[] { ' ', ',', ':' }) 
相關問題