Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

まれによく使う正規表現

はじめに

  • 登録フォーム作るときとかに使いそうな正規表現ネタのメモです
  • 細かいルールは別途学んでください
  • 動作確認はテキストエディタ(秀丸・サクラエディタ)のチェックしかしていません
  • メールアドレスの正規表現はRFCに準拠していません

まれによく使う正規表現

郵便番号

「-(ハイフン)」なしパターン(例:1234567)

^\d{7}$

とりあえず半角数字7桁ならOKの例です
○:1234567
×:123-4567
×:123456

「-(ハイフン)」ありパターン(例:123-4567)

^\d{3}-\d{4}$

「半角数字3桁」+「-(ハイフン)」+「半角数字4桁」の例です
○:123-4567
×:1234567
×:123-456

電話番号

「-(ハイフン)」なしパターン(例:0001112222)

^0\d{9,10}$

先頭が「0」で残り9桁または10桁の半角数字が続く例です

○:0001112222
×:000111222
×:9001112222

「-(ハイフン)」ありパターン(例:000-1111-2222)

^0\d{2,3}-\d{1,4}-\d{4}$

先頭が「0」+「半角数字2から3桁」+「-(ハイフン)」+「半角数字1から4桁」+「-(ハイフン)」+「半角数字4桁」の例です

○:000-1111-2222
×:00000-1111-2222
×:000-11111-2222
×:000-1111-22222

モバイル版「-(ハイフン)」ありパターン(例:080-1111-2222)

^(070|080|090)-\d{4}-\d{4}$

先頭が「070」or「080」or「090」のいずれか+「-(ハイフン)」+「半角数字4桁」+「-(ハイフン)」+「半角数字4桁」の例です

○:080-1111-2222
×:000-1111-2222
×:080-11111-2222

メールアドレス

前提

使用可能文字と条件

  • 半角英数字
  • 記号(「.(ドット)」「-(ハイフン)」「_(アンダーバー)」)・・・他の記号は許容しません
  • @(アットマーク)・・・1つだけあること

「ダブルドット問題」「@の直前のドット問題」「使用可能記号問題」は今回割愛します。

いろいろとゆるいパターンです

^[a-zA-Z0-9-_\.]+@[a-zA-Z0-9-_\.]+$

○:hoge@hoge.com
○:h-o.g_e..@h-o.g_e..com
×:hogehoge.com
×:h!o!g!e@hoge.com

都道府県

※先頭から始まる都道府県の単語のみ検索です

^(東京都|北海道|(京都|大阪)府|.{2,3}県)$

○:京都府
○:神奈川県
×:東京都府
×:西東京都
×:神奈川県横浜市

おわりに

普段使わないけれども、まれによく使う正規表現パターンをまとめました。
ここに寄稿するにあたって、再び勉強することができたのが一番の成果です。

ken97
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away