DeleteCases[expr,pattern]
式 expr のパターン pattern にマッチするすべての要素を削除する.
DeleteCases[expr,pattern,levelspec]
levelspec で指定されたレベルのパターン pattern にマッチする式 expr のすべての部分を削除する.
DeleteCases[expr,pattern,levelspec,n]
pattern にマッチする式 expr の最初の n 個の部分を削除する.
DeleteCases[pattern]
式に適用可能なDeleteCasesの演算子形を表す.
DeleteCases
DeleteCases[expr,pattern]
式 expr のパターン pattern にマッチするすべての要素を削除する.
DeleteCases[expr,pattern,levelspec]
levelspec で指定されたレベルのパターン pattern にマッチする式 expr のすべての部分を削除する.
DeleteCases[expr,pattern,levelspec,n]
pattern にマッチする式 expr の最初の n 個の部分を削除する.
DeleteCases[pattern]
式に適用可能なDeleteCasesの演算子形を表す.
詳細とオプション
- Associationに適用されると,DeleteCasesは要素をその値に従って削除する.
- DeleteCases[pattern][expr]はDeleteCases[expr,pattern]に等しい.
- DeleteCasesのオプションHeads->Trueを使って,頭部を削除することができる.式の特定の要素の頭部を削除することは,式のこの点にFlattenAtを適用するのと同じである.
- DeleteCasesは,標準的なレベル指定を使う.
-
n レベル1からレベル n まで Infinity レベル1からInfinityまで {n} レベル n のみ {n1,n2} レベル n1からレベル n2まで - DeleteCasesにおける levelspec のデフォルト値は{1}である.
- 正のレベル n は, n 個の指標で指定される expr のすべての部分からなる.
- 負のレベル-n は,深さ n の expr のすべての部分からなる.
- レベル-1は,数,記号,その他の下位部分を持たないオブジェクトからなる.
- レベル0は式全体に相当する.
- DeleteCasesは,根よりも葉を先にするように,深さを第1とした順番で expr の部分を横断する.
例題
すべて開く すべて閉じる例 (5)
DeleteCases[{1, 1, x, 2, 3, y, 9, y}, _Integer]DeleteCases[_Integer][{1, 1, x, 2, 3, y, 9, y}]Associationから要素を削除する:
DeleteCases[<|"a" -> 1, "b" -> 2, c -> "3", d -> 4|>, _Integer]DeleteCasesはAssociationの要素の一部にアクセスすることができる:
DeleteCases[<|"a" -> 1, "b" -> 2, c -> {"3", 4}, d -> 4|>, _Integer, {2}]ネストしたAssociationから要素を削除する:
DeleteCases[<|"a" -> 1, "b" -> <|"3" -> 3, "4" -> "4", "5" -> <|f -> 1|>|>, "c" -> 4|>, _Integer, {2, 3}]スコープ (2)
リストからAssociationにマッチする要素を削除する:
DeleteCases[{<|a -> 1|>, <|b -> 2|>}, <|a -> _|>]DeleteCases[{<|a -> 1|>, <|b -> 2|>}, <|_ -> a_ /; EvenQ[a]|>]DeleteCases[{<|a -> 1|>, <|b -> 2|>}, <|a -> _ ? OddQ|>]オプション (1)
アプリケーション (1)
Complementのように動作するが順序と多重度は保持する関数を構築する:
UnorderedComplement[list1_List, list2_List] := DeleteCases[list1, Alternatives@@list2]UnorderedComplement[{b, e, d, a, b, c, d}, {b, c}]Complement[{b, e, d, a, b, c, d}, {b, c}]考えられる問題 (1)
DeleteCases[{1, f[2, 3], 4}, f, {2}, Heads -> True]Association中の頭部を削除すると,その項が除かれる:
DeleteCases[<|"a" -> 1, "b" -> f["2", 3], "c" -> 4|>, f, {2}, Heads -> True]テクニカルノート
関連するガイド
-
▪
- 式の部分 ▪
- データの配列の操作 ▪
- パターンマッチング関数 ▪
- リストの要素 ▪
- 関数の合成と演算子形式 ▪
- 規則とパターン
履歴
1991 で導入 (2.0) | 2014 で更新 (10.0)
テキスト
Wolfram Research (1991), DeleteCases, Wolfram言語関数, https://reference.wolfram.com/language/ref/DeleteCases.html (2014年に更新).
CMS
Wolfram Language. 1991. "DeleteCases." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2014. https://reference.wolfram.com/language/ref/DeleteCases.html.
APA
Wolfram Language. (1991). DeleteCases. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/DeleteCases.html
BibTeX
@misc{reference.wolfram_2026_deletecases, author="Wolfram Research", title="{DeleteCases}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/DeleteCases.html}", note=[Accessed: 05-August-2026]}
BibLaTeX
@online{reference.wolfram_2026_deletecases, organization={Wolfram Research}, title={DeleteCases}, year={2014}, url={https://reference.wolfram.com/language/ref/DeleteCases.html}, note=[Accessed: 05-August-2026]}