2

sのリストがありStringます。

Stringのリストに接頭辞の文字列が含まれているかどうかを確認するにはどうすればよい2#ですか?

私はこれを見ました: 文字列のリストで部分文字列を見つける

私は次のことを試しました:

if ((startId == item.ID.ToString())
       && (item.NextButtons.Contains(s => s.Contains("2#")))) ;
   {
     OK = false;
   }
4

2 に答える 2

6

私が正しく理解した場合:

yourList.Any(s => s.Contains("2#"))

LINQAnyメソッドを使用して、コレクションのいずれかの要素が条件を満たすかどうかを判断します。

条件は、リストの各要素を入力パラメーターとして受け取り、それが stringstringかどうかをチェックするラムダ メソッドです。最初のものが見つかるまでこれを行い、またはのいずれかを返します。Contains"2#"truefalse

実際の文字列を返したい場合は、 のFirstOrDefault代わりに メソッドを使用しますAny。何も見つからない場合は、文字列または のいずれかを返しますnull

編集:2#文字列の先頭にある必要がある場合は、@ Some1.Kill.The.DJ の回答を参照してください。

于 2012-12-07T15:52:55.193 に答える
3

あなた 2#は彼らの前に欲しい。

だから、それはする必要があります

yourList.Any(s => s.StartsWith("2#"));
                    -----------
于 2012-12-07T15:58:05.117 に答える