Unprotect
Unprotect[patt1,patt2,…]
名前が任意の文字列パターン pattiのいずれかとテキスト的にマッチするすべてのシンボルのプロテクトを外す.
Unprotect[{spec1,spec2,…}]
speciのいずれかと等しいあるいは名前がマッチする任意のシンボルのプロテクトを外す.
詳細
- 組込み関数にユーザの定義を加える際の一般的な手順はUnprotect[f];definition;Protect[f]である. »
- パターン patt は,メタ文字を含む文字列,StringExpression[…],あるいはRegularExpression["regex"]として与えることができる. »
- Unprotectは,次のメタ文字を含む省略文字列を許容する.
-
* 0個以上の文字 @ 大文字を除く,1個以上の文字 - Unprotect["context`*"]は特定のコンテキストのすべてのシンボルのプロテクトを外す. »
- Unprotect["`*"]は現行コンテキストのすべてのシンボルのプロテクトを外す. »
- Unprotectは属性Lockedを有するシンボルには影響しない. »
- Unprotectは属性HoldAllを有する. »
例題
すべて開くすべて閉じるスコープ (7)
パターンを使う (5)
指定されたコンテキストのすべてのシンボルのプロテクトを外す:
StringExpressionを使って現行コンテキストの2文字シンボルすべてのプロテクトを外す:
シンボルx1とx2のプロテクトは外されたがyは影響を受けない:
RegularExpressionを使って現行コンテキストの3文字シンボルすべてのプロテクトを外す:
特性と関係 (6)
考えられる問題 (2)
Unprotectはロックされたシンボルには影響しない:
コンテキストマークなしでパターンを使うと,$ContextPathにあってパターンと一致するすべてのシンボルのプロテクトが外される:
シンボル xy のプロテクトが外され,同時にシステムシンボルのいくつかのプロテクトも外された:
パターンに明示的なコンテキストマークを付けて使うことで,パターンと一致するシステムシンボルやその他のコンテキストのシンボルのプロテクトが外されるの防ぐことができる:
テキスト
Wolfram Research (1988), Unprotect, Wolfram言語関数, https://reference.wolfram.com/language/ref/Unprotect.html (2022年に更新).
CMS
Wolfram Language. 1988. "Unprotect." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/Unprotect.html.
APA
Wolfram Language. (1988). Unprotect. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Unprotect.html