広告スペース(バナー)
🔧C言語 レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 32 / 68
正規表現入門(regex.h)
このレッスンでは、C言語のregex.hを使った正規表現の基本を学び、文字列が決まった形式に合っているかを調べられるようになることを目標にします。「C言語 regex.h 使い方」で調べている方向けです。
正規表現は、文字列の「型」を表す特殊な書き方です。「電話番号は数字の並び」のようなパターンを指定して、文字列がそれに合っているか調べたり、一致する部分を取り出したりできます。regex.hヘッダの関数を使います。
サンプルコードでは、regcomp()でパターンをコンパイルし、regexec()で実際にマッチングを行っています。他の言語に比べて、コンパイルと実行の手順を明示的に分けて書く必要がある、C言語らしい低レベルなAPIです。
初心者がよくつまずくのが、使い終わった正規表現オブジェクトを解放する必要がある点です。regfree()を呼び忘れるとメモリリークの原因になり、C言語特有のリソース管理の意識が求められます。
実際の開発現場では、正規表現は一度覚えると多くのプログラミング言語で共通して使える、汎用性の高いスキルとして重宝されます。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではC言語を直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
メールアドレスの形式が正しいかどうかをチェックする処理が作れるようになります。
メールアドレスの形式が正しいかどうかをチェックする処理が作れるようになります。
広告スペース(バナー)
広告スペース(記事内)