regcmp [-] filename...
regcmp コマンドは、 regcmp 関数と同様の機能を果たします。これにより C プログラムでの regcmp 関数の呼び出しがほとんど必要なくなります。regcmp 関数をバイパスすることで、実行時間とプログラムサイズの両方を節約できます。regcmp コマンドは、 filename 内の正規表現をコンパイルし、その結果を filename.i に出力します。
– オプションが使用されている場合、その結果は filename.c に出力されます。filename 内のエントリの形式は、名前 (C 変数)、その後ろに 1 つ以上の空白文字をあけて、二重引用符に囲まれた 1 つ以上の正規表現が続きます。regcmp の出力は、 C ソースコードです。コンパイルされた正規表現は、extern char ベクトルとして表されます。したがって、 filename.i ファイルが C プログラムに #include されることも、あるいは filename.c ファイルがコンパイルされ、その後ロードされることもあります。regcmp 出力を使用する C プログラムでは、 regex(abc,line) は abc という名の正規表現を line に適用します。診断は、自明です。
"([A−Za−z][A−Za−z0−9_]*)$0"
" \({0,1}([2−9][01][1−9])$0\){0,1} *"
"([2−9][0−9]{2})$1[ −]{0,1}"
"([0−9]{4})$2"
上記の telno に対する 3 つの引数はすべて、1 行に入力しなければなりません。
regcmp 出力を使用する C プログラムでは、
regex(telno, line, area, exch, rest)
は telno という名の正規表現を line に適用します。
LC_* 環境変数の使用法の一般的な説明は environ(5) を参照してください。
regcmp が文字を処理する方法を決定します。LC_CTYPE に有効な値が設定されていると、 regcmp は、そのロケールに合った文字を含むテキストやファイル名を表示および処理できます。
診断メッセージや情報メッセージの表示方法を決定します。また、メッセージの言語とスタイル、肯定・否定の応答形式も決定します。"C" ロケールでは、メッセージはプログラム自身が使用しているデフォルトの形 (通常、米語) で表示されます。
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
|