正規表現
正規表現を使う場面
正規表現を使う場面
文章の中から特定のデータを抽出する
文章の中から特定のデータを抽出する
例えばメールアドレスを抽出する場合、メールアドレスの形式は 半角文字@ドメイン となってますので、一番簡単に書くと
/.+@.+\..+/
となります。.は任意の1文字、+はその前の文字(任意の1文字)の繰り返しです。何かわからない文字が1個以上ある、という意味になります。@より後は同じく.+、ピリオド.は任意の1文字となってしまうので、バックスラッシュ\を付けることでピリオドとなります。
文中にメールアドレスがあれば上記の正規表現で抽出できます。厳密にはRFC5322とい規格に基づいて規定されていますが、これでとりあえず抽出することはできます。
外部からHTMLを読み込み、リンクを抽出する場合、リンクは通常、<a href="URL">リンク</a>となっているはずです。なので、以下のような正規表現で簡単にリンクURLとリンクの文字列を抽出できます。()で囲むことで抽出できます。
/<a.+?href=["']([^"']+)[^>]+>(.+?)</a/i
これで1番目の()内にURL、2番目の()内にリンクの文字が抽出できます。