获取 ConditionalExpression 的条件
Get condition of a ConditionalExpression
给定条件表达式 cE = ConditionalExpression[ Value, Condition ]
我如何提取 cE
的条件?
我试过索引,但没有用。
也许提供一个可以在更复杂的情况下使用的更清晰的版本很有趣。
考虑ConditionalExpression官方文档示例
In[]:= ce = Integrate[x^n, {x, 0, 1}]
具有以下输出:
1
Out[]= ConditionalExpression[-----, Re[n] > -1]
1 + n
要提取条件 Re[n] > -1
,您可以使用:
In[]:= FirstCase[ce, ConditionalExpression[_, c_] :> c, Missing[], {0,-1}]
打印:
Out[]= Re[n] > -1
在您的评论中,您提到了一个嵌套表达式,对于之前的方法,这也适用。例如:
In[]:= FirstCase[{{5, 6, ce, 1}}, ConditionalExpression[_, c_] :> c, Missing[], {0,-1}]
还是returns
Out[]= Re[n] > -1
如果没有找到模式,命令轻轻returnsMissing[]
。例如 Sin[6]
:
In[]:= FirstCase[Sin[6], ConditionalExpression[_, c_] :> c, Missing[], {0,-1}]
输出是:
Out[]= Missing[]
给定条件表达式 cE = ConditionalExpression[ Value, Condition ]
我如何提取 cE
的条件?
我试过索引,但没有用。
也许提供一个可以在更复杂的情况下使用的更清晰的版本很有趣。
考虑ConditionalExpression官方文档示例
In[]:= ce = Integrate[x^n, {x, 0, 1}]
具有以下输出:
1
Out[]= ConditionalExpression[-----, Re[n] > -1]
1 + n
要提取条件 Re[n] > -1
,您可以使用:
In[]:= FirstCase[ce, ConditionalExpression[_, c_] :> c, Missing[], {0,-1}]
打印:
Out[]= Re[n] > -1
在您的评论中,您提到了一个嵌套表达式,对于之前的方法,这也适用。例如:
In[]:= FirstCase[{{5, 6, ce, 1}}, ConditionalExpression[_, c_] :> c, Missing[], {0,-1}]
还是returns
Out[]= Re[n] > -1
如果没有找到模式,命令轻轻returnsMissing[]
。例如 Sin[6]
:
In[]:= FirstCase[Sin[6], ConditionalExpression[_, c_] :> c, Missing[], {0,-1}]
输出是:
Out[]= Missing[]