DeleteCases

DeleteCases[expr,pattern]
删除 expr 中与 pattern 匹配的所有元素.

DeleteCases[expr,pattern,levelspec]
删除 levspec 层上与 pattern 匹配的所有部分.

DeleteCases[expr,pattern,levelspec,n]
删除 expr 中与 pattern 匹配的前 n 个部分.

DeleteCases[pattern]
表示 DeleteCases 的运算符形式,可用于表达式.

更多信息和选项更多信息和选项

  • 当应用于 Association 上时,DeleteCases 根据它们的值删除元素.
  • DeleteCases[pattern][expr] 等价于 DeleteCases[expr,pattern].
  • 通过选项 Heads->True,您可以使用 DeleteCases 删除头部. 删除一个表达式中特定元素的头部等价于在那个位置把 FlattenAt 应用到该表达式.
  • DeleteCases 使用层指定:
  • n从第 层到第 n
    Infinity从第 层到 Infinity
    {n}仅用于第 n
    {n1,n2}从第 层 到第
  • DeleteCases 中,levelspec 的缺省值是 .
  • 一个正数层 n,包含 n 指标指定的 expr 中的所有部分.
  • 一个负数层 -n,包含深度 nexpr 中的所有部分.
  • 层数 包含数字、符号和其它不含子集的对象.
  • 层数 对应整个表达式.
  • DeleteCases 在访问根之前,按深度优先的顺序访问 expr 中的部分.

范例范例打开所有单元关闭所有单元

基本范例  (5)基本范例  (5)

删除匹配整数的元素:

In[1]:=
Click for copyable input
Out[1]=

使用运算符形式:

In[1]:=
Click for copyable input
Out[1]=

Association 删除元素:

In[1]:=
Click for copyable input
Out[1]=

DeleteCases 可以访问 Association 中元素的部分:

In[1]:=
Click for copyable input
Out[1]=

从嵌套的 Association 删除元素:

In[1]:=
Click for copyable input
Out[1]=
1991年引入
(2.0)
| 2014年更新
(10.0)
Translate this page: