設定
この3つのリストがあります。
List<List<string>> tokens = new List<string>();
List<string> token = new List<string>();
List<string> sets = new List<string();
token
リストに含まれる1 つの完全なtokens
リスト。
{"<card>"",
" <name>Domri Emblem</name>",
" <set picURL="http://magiccards.info/extras/token/Gatecrash/Domri-Rade-Emblem.jpg" picURLHq="" picURLSt="">GTC</set>",
" <color></color>",
" <manacost></manacost>",
" <type>Emblem</type>",
" <pt></pt>",
" <tablerow>0</tablerow>",
" <text></text>",
" <token>1</token>",
"</card>"}
リストは次のsets
ようになります。
{"ARB", ..., "AVR", ..., "GTC", ..., "ZEN"}
の各要素を調べて、 の要素のいずれかを含む の各文字列を削除token
したいと思います。tokens
token
set
例
tokens
リストにはいくつかのtoken
要素があります。1 つtoken
(token1 など) には、このような要素があります。
{..., " <set picURL="http://magiccards.info/extras/token/Gatecrash/Domri-Rade-Emblem.jpg" picURLHq="" picURLSt="">GTC</set>", ...}
別のtoken
もの (token2 など) には、これら 2 つの要素があります。
{..., " <set picURL="http://magiccards.info/extras/token/magic-2012/pentavite.jpg" picURLHq="" picURLSt="">M12</set>",
" <set picURL="http://magiccards.info/extras/token/player-rewards-2004/pentavite.jpg" picURLHq="" picURLSt="">MI</set>", ...}
のみを含むようにsets
リストが変更されたとします{"ARB", "GTC", "M12"}
。
それぞれの文字列要素を調べて、文字列要素のいずれかを含む文字列要素を削除するtoken
にはどうすればよいですか? では、そのプロセスの後、token1 には上記の要素がなく、token2 には 2 番目に提示された要素しかありませんか?tokens
sets
私が試したこと
token
これは各inを通過し、 string を含むtokens
in の要素をすべて削除します。token
"GTC"
foreach (var token in tokens)
{
token.RemoveAll(str => str.Contains("GTC"));
}
他の質問をいくつか見て、これを見つけましたが、うまくいきません。
foreach (var token in tokens)
{
token.RemoveAll(sets.Contains);
}
助けてくれてありがとう。