Objective-C [ObjC part:3];
■ このスレッドは過去ログ倉庫に格納されています
0557デフォルトの名無しさん
2008/07/20(日) 11:08:37lexは字句解析のことで、文字列を1文字づつ読み込んでトークン、つまり単語に切り分ける仕事をする。
yaccは構文解析のことで、得られたトークンの意味を推測して構文木を作成する。
で、得られた構文木を元にして文字列の意味を翻訳する。
正規表現は、 テキストの文字列に対してパターンマッチを行う強力な道具です。
TEXTファイル中からある単語を置換/検索するのもパターンマッチです。
例えばyaccを使わないで簡易にキーワード(文法上重要なトークン)を探したいときのパターンマッチを正規表現でやるとか出来ます。
regex、OregKitは正規表現プログラムなのでそういったことが簡単に出来ます。
int sprintf(char *str, const char *format, ... );
sprintfは書式formatにしたがって、printf関数と同様の変換を行った出力を、文字列strに格納します。使えるようになると凄く便利。
char *str : 変換した出力を格納する文字列。
const char *format : 書式指定文字列。
※ 要するに、正規表現は文字列のパターンマッチをするのに対して、sprintf関数は文字列を変換します。だから役割はちがう。
■ このスレッドは過去ログ倉庫に格納されています