TreeReplacePart[tree,posnew]
tree の pos で指定される部分木が new で置換された木を与える.
TreeReplacePart[tree,{pos1new1,pos2new2,…}]
posiで指定された位置の部分木を newiで置換する.
TreeReplacePart[tree,{pos1,pos2,…}new]
posiで指定される位置のすべての部分木を new で置換する.
TreeReplacePart[tree,{{pos1,1,pos1,2,…}new1,…}]
{posi,1,posi,2,…}で指定される位置の部分木を newiで置換する.
TreeReplacePart[posnew]
木に適用可能なTreeReplacePartの演算子形を表す.
TreeReplacePart
TreeReplacePart[tree,posnew]
tree の pos で指定される部分木が new で置換された木を与える.
TreeReplacePart[tree,{pos1new1,pos2new2,…}]
posiで指定された位置の部分木を newiで置換する.
TreeReplacePart[tree,{pos1,pos2,…}new]
posiで指定される位置のすべての部分木を new で置換する.
TreeReplacePart[tree,{{pos1,1,pos1,2,…}new1,…}]
{posi,1,posi,2,…}で指定される位置の部分木を newiで置換する.
TreeReplacePart[posnew]
木に適用可能なTreeReplacePartの演算子形を表す.
詳細とオプション
- TreeReplacePartを使うと,Treeオブジェクト内の任意のパターンにマッチする位置の葉として部分木を新たな部分木や一般的な式で置換することができる. »
- TreeReplacePart[tree,{i,j,…}new]は位置{i,j,…}にある部分木を new で置換する.
- TreeReplacePartはTreePositionが返す位置指定やTreeInsertおよびTreeExtract等の関数が使う拡張された形の位置指定を使うことができる. »
- 個々の位置指定 pos は{part1,part2,…}で与えることができる.以下を部分指定 partiに含めることができる.
-
i i 番目の子 -i 最後から i 番目の子 {i1,i2,…} 部分番号 i1, i2, …の子のリスト pattern 部分番号が patt とマッチする子 "key" キーが"key"の子 Key[k] 任意のキー k を持つ子 - さまざまな長さの位置指定を表す__のような構造にはパターンを入れることができる. »
- TreeReplacePart[tree,{p1,p2,…}new]の{p1,p2,…}は,すべての piがリストの場合は個々の位置指定のリストと解釈される.{p1,p2,…}は,それ以外の場合は個々の位置指定とみなされる. »
- TreeReplacePartは,キーについてPartと同じ指定を使って,部分木のAssociationを含む木に使うことができる. »
- TreeReplacePart[posnew][tree]はTreeReplacePart[tree,posnew]に等しい.
- TreeReplacePartにはTreeと同じオプションが使える.
全オプションのリスト
例題
すべて開く すべて閉じる例 (5)
TreeReplacePart[[image], {2} -> xx]TreeReplacePart[[image], {2, 1} -> [image]]TreeReplacePart[[image], {{1}, {3}, {5}} -> xx]TreeReplacePart[[image], {{1} -> xx, {3} -> yy, {5} -> zz}]TreeReplacePart[[image], {i_, i_} :> i]TreeReplacePartの演算子形を使う:
TreeReplacePart[-1 -> xx][[image]]スコープ (5)
連想 (5)
```TreeReplacePart[[image], {Key[expr]} -> 3]キーが文字列の場合,Keyラッパーはあってもなくてもよい:
TreeReplacePart[[image], {"str"} -> 3]TreeReplacePart[[image], {Key[1]} -> 3]TreeReplacePart[[image], {1} -> 3]TreeReplacePart[[image], {{1}, {Key[1]}} -> 3]TreeReplacePart[[image], {Key[3], 1} -> 3]TreeReplacePart[[image], {{Key[3], 1}, {3, 1}} -> 3]特性と関係 (11)
TreeReplacePart[[image], {___, 2, ___} -> x]部分木をTreeオブジェクト以外の式で置換することは葉を挿入することに等しい:
TreeReplacePart[[image], -3 -> x]TreeReplacePart[[image], -3 -> [image]]Spliceを使って部分木をいくつかの部分木で置換する:
TreeReplacePart[[image], 2 -> Splice[{1, 2, 3, 4}]]TreeReplacePart[[image], 2 -> [image]]TreeInsert[[image], [image], 2]TreeDelete[[image], 2]ExpressionTree[1[2[3, 4], 5[6, 7]], "Heads"]TreeReplacePartは木の部分木を置換する:
TreeReplacePart[%, {1} -> x]TreeExpression[%, "Heads"]ReplacePartは部分式を直接置換できる:
ReplacePart[1[2[3, 4], 5[6, 7]], {1} -> x]pos がリストではなければ.pos と{pos}は同じ指定である:
tree = [image];TreeReplacePart[tree, 3 -> x] === TreeReplacePart[tree, {3} -> x]明示的にリストではないパターン p は直接の子に対してマッチされる:
TreeReplacePart[[image], _ ? EvenQ -> [image]]TreeReplacePart[[image], {_ ? EvenQ} -> [image]]TreeReplacePart[[image], {{}} -> x]TreeReplacePartは規則を与えられた順序で使う:
TreeReplacePart[[image], {1 -> x, 1 -> y}]TreeReplacePartはTreePositionが返す位置のリストを使うことができる:
tree = NestTree[Range[3# - 1, 3# + 1]&, 1, 2]pos = TreePosition[tree, _ ? PrimeQ]TreeReplacePart[tree, pos -> [image]]次は,TreeExtractに返された部分木である:
TreeExtract[tree, pos]TreeReplacePart[tree,{p1,p2,…}new]は,すべての piがリストなら{p1,p2,…}を個々の位置指定のリストとして扱う:
tree = [image];{{1,2},{3,4}}の場合は位置{1,2}と{3,4}の部分木が置換される:
TreeReplacePart[tree, {{1, 2}, {3, 4}} -> [image]]任意の piがリストではなければ,{p1,p2,…}は位置指定のリストとして扱われる:
TreeReplacePart[tree, {{1, 2}, 3} -> [image]]TreeReplacePart[tree, {1, {3, 4}} -> [image]]{{{1,2},{3,4}}}の場合は部分1と2の部分3と4が置換される:
TreeReplacePart[tree, {{{1, 2}, {3, 4}}} -> [image]]考えられる問題 (2)
TreeReplacePartは既に存在する位置にのみ影響する:
TreeReplacePart[[image], 5 -> x]TreeReplacePart[tree,{}new]は位置のリストが空なので任意の部分木を置換しない:
TreeReplacePart[[image], {} -> x]TreeReplacePart[tree,{{}}new]は位置{}を置換するが,これは木全体に相当する:
TreeReplacePart[[image], {{}} -> x]テキスト
Wolfram Research (2021), TreeReplacePart, Wolfram言語関数, https://reference.wolfram.com/language/ref/TreeReplacePart.html (2024年に更新).
CMS
Wolfram Language. 2021. "TreeReplacePart." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2024. https://reference.wolfram.com/language/ref/TreeReplacePart.html.
APA
Wolfram Language. (2021). TreeReplacePart. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/TreeReplacePart.html
BibTeX
@misc{reference.wolfram_2026_treereplacepart, author="Wolfram Research", title="{TreeReplacePart}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/TreeReplacePart.html}", note=[Accessed: 06-July-2026]}
BibLaTeX
@online{reference.wolfram_2026_treereplacepart, organization={Wolfram Research}, title={TreeReplacePart}, year={2024}, url={https://reference.wolfram.com/language/ref/TreeReplacePart.html}, note=[Accessed: 06-July-2026]}