Transform

提供: AutoHotkey Wiki
移動: 案内検索

実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 | キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ
ステータスバー | コントロール | サウンド | ファイル | INIファイル | レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト

Transform[編集]

各種の数値計算、ASCIIコード変換、ビット演算等の変換を行う。

Transform, OutputVar, Cmd, Value1 [, Value2]

Parameters[編集]

引数名 説明
OutputVar 結果を格納する変数名。
結果の数値の表記フォーマットはSetFormatで設定できる。
Cmd, Value1, Value2 下記参照

Cmd, Value1, Value2[編集]

コマンド名及びValue1,Value2の役割の説明は以下

数値計算[編集]

Mod, Dividend, Divisor DividendをDivisorで割った余りを得る。
Divisorの値がゼロの場合、結果は空になる。
Divisorの値が負の場合、絶対値が代わりに使われる。
Dividendの値が負の場合、結果はゼロになる。
Dividend,Divisorはともに小数を含むことができる。
Pow, Value1, N Value1のN乗を得る。
Nは小数や負の数でもよい。
Nが負の数の場合、結果は小数表記になる。
Value1が負の数の場合、結果は空になる。
Exp, N e(≒2.71828182845905)のN乗を得る。
Nは小数や負の数でもよい。
Sqrt, Value1 Value1の2乗根(√)を得る。
Value1が負の数の場合、結果は空になる。
Log, Value1 10を底としたValue1の対数を得る。
Value1が負の数の場合、結果は空になる。
任意の底を使いたい場合、底の変換の公式を使う。
Ln, Value1 Value1の自然対数を得る。
Value1が負の数の場合、結果は空になる。
Round, Value1 [, N] Value1を小数点以下N桁で四捨五入する。
Nは負の数でもよい。
Nを省略したときは、小数点以下を四捨五入する。
小数点以下が四捨五入されても、小数点以下の桁数は維持される。
Ceil, Value1 Value1以上の一番小さい整数を得る。
Floor, Value1 Value1以下の一番大きい整数を得る。
Abs, Value1 Value1の絶対値を得る。

Mod,Pow,Round,Absでは、Value1かValue2のどちらかにでも小数点が含まれれば、結果は小数になる。

三角関数[編集]

Sin, Value1 Value1の値のサインを得る。
Value1はラジアンで指定。
Cos, Value1 Value1の値のコサインを得る。
Value1はラジアンで指定。
Tan, Value1 Value1の値のタンジェントを得る。
Value1はラジアンで指定。
ASin, Value1 Value1の値のアークサインをラジアンで得る。
Value1の値が-1...1の範囲にない場合、結果は空になる。
ACos, Value1 Value1の値のアークコサインをラジアンで得る。
Value1の値が-1...1の範囲にない場合、結果は空になる。
ATan, Value1 Value1の値のアークタンジェントをラジアンで得る。

アークサインとは、Sinが元の数値になるような角度のことである。

ラジアンを角度に変換するには、180/pi(≒57.29578)を掛ければよい。
角度をラジアンに変換するには、pi/180(≒0.01745329252)を掛ければよい。
πを得るには、ATan,1を4倍すればよい。

ビット演算[編集]

値は、符号なし32ビット整数の範囲(0...4294967295)にある場合、値は符号なし32ビット整数として計算される。 それ以外の場合は、符号付64ビット整数として計算される。

BitNot, Value1 Value1の論理否定を得る。
BitAnd, Value1, Value2 Value1とValue2の論理積を得る。
BitOr, Value1, Value2 Value1とValue2の論理和を得る。
BitXOr, Value1, Value2 Value1とValue2の排他的論理和を得る。
BitShiftLeft, Value1, Value2 Value1をValue2の数だけ左にビットシフトする。
BitShiftRight, Value1, Value2 Value1をValue2の数だけ右にビットシフトする。

文字コード処理[編集]

Asc, String Stringの1文字目のASCIIコード(0...255)を得る。
Stringが空の場合は結果も空になる。
同機能の関数版として Asc() がある。
Chr, Value1 Value1で指定したASCIIコードの文字を得る。
Value1には 0から 255までの数を指定する。
問題がある場合は結果が空になる。
同機能の関数版として Chr() がある。
Unicode クリップボードのASCII文字列をUnicode文字列に変換して取り出す。
※ 実際にはUTF-8に変換される
Unicode, String Stringで指定したUnicode文字列をASCII文字列に変換してクリップボードに格納する。OutputVarは Clipboardとする必要がある。
※ 実際にはUTF-8から変換される
ToCodePage, CodePage, String AHKL AHKL L54より廃止となった。StrPut()を利用すること。
FromCodePage, CodePage, StringExpression AHKL AHKL L54より廃止となった。StrGet()を利用すること。

その他[編集]

DeRef, String String中の変数参照を、参照先の変数内のエスケープ文字と変数参照( %VarName%のような記述)を展開する。
参照先が存在しない変数指定およびOutputVarへの参照は空文字列として展開される。参照先の変数自身への参照はそのまま展開される。
INIファイルに改行などを含む文字列を記述したい場合、エスケープ文字を使って記述しておき、このコマンドで展開する。
HTML, String Stringの文字列をHTML中にそのまま表示できるように置換する。
ASCIIコードで128以上の文字と"&<>を実体参照に、改行は <br>に置換される。
HTML, String [, Flags] AHKL ユニコード版のみ
Stringの文字列をHTML中にそのまま表示できるように置換する。
基本的に HTML,String と同じだが、Flags の指定の仕方で実体参照の表現方法を変更出来る。Flags には以下の和を指定する。未指定の場合は1が指定されたとみなす。
1: 文字実体参照にする。(例)「€」は「&euro;」となる
2: 数値文字参照にする。(例)「€」は「&#8364;」となる

これは非ASCII文字のみが影響をうける。Flags=3 の場合、数値文字参照は文字実体参照が使用できないところだけに適応される。
「<」「>」「"」「&」「`n (改行)」 はこのオプションに関わらす常に変換される。

Related[編集]

SetFormat, EnvMult, EnvDiv, StringLower, if var is type

AHKL StrPut(), StrGet()

Example(s)[編集]

Transform, OutputVar, Asc, A  ; Get the ASCII code of the letter A.