LINEスタンプ制作代行サービス・LINEスタンプの作り方!

お電話でのお問い合わせ:03-6869-8600

stampfactory大百科事典

AWK

(オーク)は、 上で開発されたプログラミング言語で、デフォルトでは改行でレコードが区切られ、各レコードのフィールドは空白類(スペースの他、タブなど)で区切られているようなテキストファイルを扱えるが、カスタマイズも可能であり、また文字列と数値を扱うプログラミングも可能である。 は、ベル研究所における 開発の過程で、 や のようなテキスト処理ツールに演算機能を持たせた拡張ツールとして開発された。名称の は、開発者であるアルフレッド・エイホ、ピーター・ワインバーガー、ブライアン・カーニハンの3人の苗字の頭文字を取って付けられたものであるが、 は「オーク」と読み、「エー・ダブリュー・ケー」と読んではならないと著者らはしている。また、全て小文字で codice_1 とした場合、 ないし における、 のインタプリタ処理系プログラム自体(他の多くのコマンドと同じく全て小文字である)を指してそうしていることがある。AWKのスクリプトは、パターンとアクションの組を並べた形になっている。実行を開始すると、まず codice_2 パターンのアクションを実行する。以降、入力を読み込んでは、レコードセパレータ(デフォルトでは行末)までを1レコードとし、フィールドセパレータに従ってフィールドに分割してから、レコードがパターンにマッチするかを調べ、パターンにマッチしたらそのパターンに対応するアクションを実行する。一致するパターンが複数ある時は、該当するアクションが上から順に全て実行される。これを入力が尽きるまで繰り返す。入力が尽きたら、codice_3 パターンのアクションを実行し、終了する。ファーストクラスのデータ型は、数値(全て倍精度浮動小数点型で扱われる)と文字列である。他に文字列をキーとした連想配列があるが、連想配列はファーストクラスではなく関数の返戻値にできないなどデータというよりは、配列変数という変種の変数があるといったような扱いである。連想配列の中身(要素)を連想配列にすることはできないため、ループするようなデータ構造を作ることは不可能。連想配列のキーに数値を使うと、文字列に変換したものがキーとなる。codice_4 のようにして多次元配列のように見えるアクセスもできるが、実際には各次元を必要であればまず文字列化した後に、グローバル変数 codice_5 の文字列(デフォルトでは "x1c" )をセパレータとして連結した文字列をキーとしてアクセスする。スクリプトの基本構成は次のようになる。codice_2、codice_3 アクションは必須ではない。例として、テキストファイル内の全ての行のうち、「codice_9」「codice_10」「codice_11」という文字列を含む行の数をカウントするプログラムを以下に示す。なお、 では、まだ代入されていない変数は暗黙のうちに codice_13 または codice_14 で初期化されると仮定してよいので、上の例での ブロックは必須ではない。パターンには以下のように開始と終了を定義するパターンもある。例えば、以下のように定義すると、codice_16 を含む行から、codice_17 を含む行まで(その行を含む)の間、アクションが実行されその行が出力される。 の特徴の一つとして変数が型を持たないことが挙げられる。変数宣言が不要で、プログラム中で使用される変数は暗黙のうちに初期化される。このため、未定義変数や未初期化変数を参照することによるエラーは には存在しない。のような例では、codice_20 および codice_21 の値は codice_22 になる。こうした暗黙の変換は便利であると同時に、ユーザの意図しない結果を生むこともある。また、変数に入っているのがどちらかわからないが、必ず数値が必要という場合などにのように0を足したり、逆に必ず文字列が必要という場合などにのように"を結合させたり、という常套手段がある。 では、関数を定義して使用することが可能である。関数の定義は次のようになる。このように関数を定義して、この関数を呼び出すときに引数を3つしか使わなければ、局所変数1 以降は局所変数として扱える。構文上の区別は無いが、判読性を向上させるために両者の間に十分な空白を挿入するのが慣例になっている。また、 の関数は再帰呼び出しもできる。 の制御構造には以下のようなものがある。また、制御構造の他に、以下の文がある。もともとのAWKは、UNIXに付属していたものであったが、様々なプラットフォームに移植された他、GNU AWK(codice_64)を代表に、他の実装も多い。

出典:wikipedia

LINEスタンプ制作に興味がある場合は、
下記よりスタンプファクトリーのホームページをご覧ください。