Replace
Replace[expr,rules]
式 expr 全体の変換をしようとするとき,規則または規則のリストを適用する.
Replace[expr,rules,levelspec]
levelspec で指定される expr の部分に規則を適用する.
詳細とオプション
- 規則は,lhs->rhs またはlhs:>rhs の形式で与えられることが必要である.
- リストになった規則を与えることもできる.この規則は,順に試行される.最初に適用されるものの結果が返される.いずれの規則も適用されない場合には,もとの expr が返される.
- 規則がネストしたリストの中に与えられた場合,実質的に,Replaceは,内側のリストに写像されることになる.したがって,Replace[expr,{{r11,r12},{r21,…},…}]は,{Replace[expr,{r11,r12}],Replace[expr,{r21,…}],…}と同値である.
- :>で定義された遅延型の規則には,/;条件を含むことができる.
- Replaceは,標準的な形でレベル指定を行う.
-
n レベル 1 からレベル n Infinity レベル 1 から Infinity All 0を含む全レベル {n} レベル n のみ {n1,n2} レベル n1 からレベル n2 - Replaceでの levelspec のデフォルト値は{0}で,これは式全体に当たる.
- 正のレベル n は,n 個の指標で指定された expr のすべての部分からなる.
- 負のレベル-n は,深さ n の expr のすべての部分からなる.
- レベル-1は,数,シンボル,その他の下位区分を持たないオブジェクトからなる.
- levelspec に複数のレベルが含まれている場合,与えられた部分式中のより深いレベルの式が最初にマッチされる.
- Heads->Trueというオプション設定では,Replaceは式の頭部と部分を含む.
- 置換は,levelspecで指定された部分にHoldや関連するラッパーがある場合でも施される.
- Replace[rules][expr]はReplace[expr,rules]に等しい.
例題
すべて開くすべて閉じる例 (4)
スコープ (15)
検定関数が適用されるとTrueを与えるリスト中の要素を置換する:
ReplaceはRuleDelayedと共に使うこともできる:
Dispatchをインプレースで規則のリストに使うことができる:
Associationをインプレースで規則のリストに使うことができる:
Association中のすべての値に関数を適用する:
Associationをキーと値を逆にしたもので置換する:
Association中のすべての規則をリストに抽出する:
オプション (2)
アプリケーション (1)
特性と関係 (12)
リストのリストが置換に使われた場合,結果は長さの等しいリストになる:
レベル指定Allは{0,-1}および{0,∞}に等しい:
規則が複数のレベルでマッチする場合,Replaceはマッチするすべての部分式を変換する:
複数のレベルが与えられた場合,Replaceは深さ優先探索を使って式をスキャンする:
Replaceは,デフォルトで,式全体を置換する:
ReplaceAllはマッチする任意の部分を置換する:
レベル指定がAllのとき,Replaceはすべての部分式を厳密に1回置換しようとする:
ReplaceAllは可能な最大の部分式を置換し,そこで停止する:
ReplaceRepeatedは,式が変化しなくなるまで繰り返しReplaceAllを適用する:
Replaceは,特定のレベルでパターンに対して部分をマッチする:
ReplacePartは特定の位置で部分式を書き直す:
ReplaceListは,可能なすべてのマッチを使って結果のリストを与える:
Replaceは,最初の標準的なマッチを与える:
Replaceは完全な連想を変換することができる:
Replaceは指定されたレベルの個々の式をマッチする:
SequenceReplaceは第1レベルの式の列をマッチする:
MatchQ[expr,lhs]がTrueを返すときかつそのときに限り,Replace[expr,lhsrhs]は変換された結果を返す:
テキスト
Wolfram Research (1988), Replace, Wolfram言語関数, https://reference.wolfram.com/language/ref/Replace.html (2014年に更新).
CMS
Wolfram Language. 1988. "Replace." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2014. https://reference.wolfram.com/language/ref/Replace.html.
APA
Wolfram Language. (1988). Replace. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Replace.html