2012-05-10 35 views
-3

假設我有以下幾點:旋進list中的每個元素<string>則列表存儲回串

public static string testtok(string ss) 
{ 
    if ...... 
     return ss=................; 

    return ss; 
} 

我可以做這樣的事情?

private string stemmingwords (List<string> wordstokens) 
{ 
    return string.Join(" ", wordstokens).Where(x => testtok(x)); 
} 

爲什麼它不起作用?請幫忙。

+2

testtok()返回no bool – webber2k6

+0

@ webber2ks,怎麼沒有返回布爾? –

+0

你的方法testtok()確實返回字符串,但是對於Where(..),你需要一個bool ...但你不再需要它 – webber2k6

回答

6

它不應該是這樣的:

private string stemmingwords (List<string> wordstokens) 
{ 

return string.Join(" ", wordstokens.Select(x=> testtok(x)); 
} 

string.Join返回一個字符串,那麼你會在哪裏上的串,即工作。 IEnumerable<char>

我的版本使用直接選擇字詞標記,而不是string.Join上的結果。另外,Where是一個過濾操作,不會修改元素。 Select是一個投影操作,可以返回被髮送的另一個元素,這就是你想要的。

+0

那該怎麼辦? –

+0

就像我寫在我的答案應該工作正常。 –

+0

是的,謝謝 –

相關問題