Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > 核心语言 > 规则与模式 > 规则 >

Replace

Replace[expr, rules]
应用一个规则或规则列表来转换整个表达式 expr
Replace[expr, rules, levelspec]
应用规则到 expr 中由 levelspec 指定的部分。
  • 这些规则必须具有 lhs->rhslhs:>rhs 的形式。
  • 可以给出一个规则列表。按次序应用规则。 返回第一个应用的规则所得到的结果。 如果没有应用到任何一个规则,则返回原表达式 expr
  • 如果规则列表用嵌套列表的形式给出,Replace 将有效地映射到内层列表上。因此Replace[expr, {{r11, r12}, {r21, ...}, ...}] 等价于{Replace[expr, {r11, r12}], Replace[expr, {r21, ...}], ...}
  • :> 定义的延时规则可以包含 /; 条件。
  • Replace 用标准的层次指定:
n1 层到第 n
Infinity1 层到 Infinity
{n}仅应用第 n
{n1,n2}n1 层到第 n2
  • Replacelevelspec 缺省值是 {0},对应于整个表达式。
  • 正层的 n 由指标 n 指定的 expr 所有部分组成。
  • 负层的-n 由带有深度 n expr 所有部分组成。
  • -1 由不带子集的数值、符号和其它对象组成。
  • 选项设置 Heads->TrueReplace 也作用于表达式的头部和其它部分。
  • levelspec 指定的部分应用替换,甚至在它们有 Hold 或相关包装下。
缺省下 Replace 将规则仅应用到整个表达式上:
In[1]:=
Click for copyable input
Out[1]=
它并不作用到子集中:
In[2]:=
Click for copyable input
Out[2]=
 
规则列表给出结果列表:
In[1]:=
Click for copyable input
Out[1]=
1 的新功能 | 4 中的修改功能
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team