ClearAll
詳細
- パターン patt は,メタ文字を含む文字列,StringExpression[…],あるいはRegularExpression["regex"]として与えられる. »
- ClearAllには,以下のメタ文字を含む省略文字列パターンが使える.
-
* 0個以上の文字 @ 大文字を除く1個以上の文字 - ClearAll["context`*"]は特定のコンテキストのすべてのシンボルをクリアする. »
- ClearAll["`*"]は現行コンテキストのすべてのシンボルをクリアする. »
- ClearAllは属性LockedまたはProtectedを持つシンボルには影響しない. »
- ClearAllは属性HoldAllを有する. »
例題
すべて開く すべて閉じる例 (1)
スコープ (16)
シンボルの入力 (11)
x = 5;xClearAll[x]xfact[1] = 1;
fact[n_] := n fact[n - 1]fact[3]ClearAll[fact]fact[3]h/:f[h[x_]] := hf[x]f[h[x]]ClearAll[h]f[h[x]]f[x_][y_] := h[x, y]f[x][y]ClearAll[f]f[x][y]Format[kappa] := κkappaClearAll[kappa]kappaSetAttributes[f, Listable];f[{x, y}]ClearAll[f]f[{x, y}]Default[f] = 0;
f[x_.] := x ^ 2f[]ClearAll[f]f[]Options[f] = {opt1 -> def1, opt2 -> def2};OptionValue[f, opt1]ClearAll[f]OptionValue[f, opt1]f::usage = "f[x] gives (x - 1)(x + 1)";Message[f::usage]ClearAll[f]Message[f::usage]a = 5;
f[x_] := x ^ 3f[a]ClearAll[a, f]f[a]x1 = 1;x2 = 3;x3 = 5;ClearAll[{x1, "x2"}]{x1, x2, x3}パターンを使う (5)
x1 = 1;x2 = 3;y = 5;ClearAll["x*"]{x1, x2, y}x1 = 1;x2 = 3;y = 5;ClearAll["`*"]{x1, x2, y}abc`x1 = 1;abc`x2 = 3;abc`y = 5;ClearAll["abc`*"]{abc`x1, abc`x2, abc`y}StringExpressionを使って現行コンテキストの2文字のシンボルすべてをクリアする:
x1 = 1;x2 = 3;y = 5;ClearAll["`" ~~ _ ~~ _]{x1, x2, y}RegularExpressionを使って現行コンテキストの3文字のシンボルをすべてクリアする:
x = 1;yy = 3;zzz = 5;ClearAll[RegularExpression["`..."]]{x, yy, zzz}アプリケーション (2)
ClearAll[fib]fib[1] = fib[2] = 1;
fib[n_] := fib[n] = fib[n - 1] + fib[n - 2]fib[5]パッケージ中のすべてのシンボルを2回読み込めるように,シンボルのプロテクトを外しクリアする:
Begin["`Private`"];Unprotect["`*"];
ClearAll["`*"];f[x_] := x ^ 2Protect[f];End[];特性と関係 (6)
ClearAll[pattern]はClearAll/@Names[pattern]と同じシンボルをクリアする:
x = 1;y = 2; xy = 3;
ClearAll["x*"];
{x, y, xy}x = 1;y = 2; xy = 3;
ClearAll /@ Names["x*"];
{x, y, xy}Clearは属性,デフォルト値,オプションは取り除かない:
SetAttributes[f, Listable];
Default[f] = 0;
Options[f] = {opt1 -> def1, opt2 -> def2};
f[x_.] := x ^ 2Clear[f]Definition[f]ClearAllを使ってすべてをクリアする:
ClearAll[f]Definition[f]Clearはメッセージは除去しない:
f::usage = "f[x] gives (x - 1)(x + 1)";Clear[f]Message[f::usage]ClearAllを使ってメッセージをクリアする:
ClearAll[f]Message[f::usage]ClearAllはすべての特性と定義を取り除くがシンボル自体はそのまま残す:
SetAttributes[f, Listable];
f[x_] := x ^ 2ClearAll[f]? fRemoveはシンボルを完全に取り除く:
Remove[f]? fUnset (=.) を使って特定の左辺を持つ定義をクリアする:
SetAttributes[fact, Listable];
fact[0] = 1;
fact[n_Integer] /; n > 0 := n fact[n - 1]
fact[n_Integer] /; n < 0 := -∞fact[0]=.Definition[fact]ClearAll[fact]Definition[fact]Definition[ClearAll]symbol = {"x", "y", "z"};x = 1;y = 3;z = 5;ClearAll[symbol]{symbol, x, y, z}symbol = {"x", "y", "z"};ClearAll[Evaluate[symbol]]{symbol, x, y, z}考えられる問題 (3)
x = 5;
Protect[x];ClearAll[x]Unprotectを使ってプロテクトされたシンボルの定義をクリアする:
Unprotect[x];
ClearAll[x]Clearはロックされたシンボルの値と定義をクリアできる:
f[x_] := x ^ 2;
SetAttributes[f, Locked]Definition[f]Clear[f]Definition[f]ClearAllはロックされたシンボルには影響を与えない:
f[x_] := x ^ 2ClearAll[f]Definition[f]コンテキストマークがないパターンを使うと$ContextPathでパターンに一致するすべてのシンボルがクリアされる:
x = 1;y = 2;xy = 3;
ClearAll[_ ~~ _]シンボルxyはクリアされ,同時にいくつかのシステムシンボルのクリアも試みられた:
xy明示的なコンテキストマークがあるパターンを使うことで,システムや他のコンテキストにあるパターンと一致するシンボルのクリアを防ぐことができる:
ClearAll["`" ~~ _]関連するガイド
-
▪
- 割当て ▪
- メモリの計測と最適化
関連するワークフロー
- シンボルや関数の定義を消去する
履歴
1988 で導入 (1.0) | 2022 で更新 (13.2)
テキスト
Wolfram Research (1988), ClearAll, Wolfram言語関数, https://reference.wolfram.com/language/ref/ClearAll.html (2022年に更新).
CMS
Wolfram Language. 1988. "ClearAll." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/ClearAll.html.
APA
Wolfram Language. (1988). ClearAll. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ClearAll.html
BibTeX
@misc{reference.wolfram_2026_clearall, author="Wolfram Research", title="{ClearAll}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/ClearAll.html}", note=[Accessed: 06-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_clearall, organization={Wolfram Research}, title={ClearAll}, year={2022}, url={https://reference.wolfram.com/language/ref/ClearAll.html}, note=[Accessed: 06-September-2026]}