セマンティックバージョン番号
セマンティックバージョン番号に一致します。前後が固定されているので文字列全体が合う必要があります。取り出すグループはありません。
式
/^\d+\.\d+\.\d+(?:-[0-9a-z.-]+)?(?:\+[0-9a-z.-]+)?$/i- 一致の範囲
- 文字列全体
- 取り出すグループ
- 0
- フラグ
- i · 大小文字を無視
- 最初の例で取れる部分
- 1.0.0
試してみる
好きな文を入れると、この式が取る部分に印が付きます。ブラウザの中だけで動き、どこにも送られません。
1.0.0
1か所に一致
合う例
- 1.0.0
- 2.1.3-beta.1
- 1.0.0+build5
合わない例
- 1.0
- v1.0.0
同じ組の別の式
^(?:[01]\d|2[0-3]):[0-5]\d$24時間制の時刻^(?:0?[1-9]|1[0-2]):[0-5]\d\s?(?:am|pm)$午前・午後付きの時刻^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})$ISO形式の日時^P(?=\d|T\d)(?:\d+Y)?(?:\d+M)?(?:\d+D)?(?:T(?:\d+H)?(?:\d+M)?(?:\d+S)?)?$ISO形式の期間^\d+$符号なしの整数^[+-]?\d+$符号が付きうる整数^-?\d+(?:\.\d+)?$小数点が付きうる数^-?\d+(?:\.\d+)?[eE][+-]?\d+$指数表記の数読み方
- 前後に ^ と $ があれば文字列全体が合う必要があります。なければ文中のどこでも構いません。入力検査に使う式には必ず付けてください。
- かっこ ( ) は中身を取り出します。まとめるだけでよいときは (?: ) と書けば、後ろのグループ番号がずれません。
- ここに載せた式はすべて例と突き合わせて検査しています。ただし「メールの形をしている」ことと「実在する宛先」であることは別の話です。
- 終わりの決まっていない繰り返しが入れ子になると((a+)+ など)、入力によって時間が爆発することがあります。他人の式を貼る前にこの形を探してください。
よくある質問
Q. セマンティックバージョン番号に一致する正規表現は。
^\d+\.\d+\.\d+(?:-[0-9a-z.-]+)?(?:\+[0-9a-z.-]+)?$ です。フラグは i を使います。
Q. どんな文字列が合いますか。
1.0.0 のような文字列は合い、1.0 のような文字列は合いません。
Q. 文字列全体が合う必要がありますか。
はい。^ と $ で囲まれているので、全体が合わないと通りません。
Q. 取り出した値はどう使いますか。
取り出すグループがないので、一致した全体(match[0])だけが返ります。一部だけ必要ならその箇所をかっこで囲んでください。