0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

様々な正規表現のまとめ

Last updated at Posted at 2024-08-20

はじめに

よく使う正規表現を備忘録としてまとめてみました。
Java前提ですが、他の言語でも応用可能かと思います。
主にBeanValidatorのPatturnで使用することを想定しているため、既に存在しているもの(EmailやURLなど)はここでは扱いません。

半角数字

^[0-9]*$

半角英字

^[A-Za-z]*$

半角記号(半角スペース含む)

^[ -/:-@[-`{-~]*$

半角英数字

^[0-9A-Za-z]*$

半角英数記号(半角スペース含む)

^[0-9A-Za-z -/:-@[-`{-~]*$

ひらがな(空白含む)

^[ぁ-んー\s]*$

カタカナ(空白含む)

^[ぁ-んー\s]*$

郵便番号(ハイフン含む)

[0-9]{3}\-[0-9]{4}

郵便番号(ハイフン含まない)

[0-9]{7}

郵便番号(ハイフン任意)

[0-9]{3}\-?[0-9]{4}

フォルダ名(ドライブ名含む絶対パス)

フォルダ名やファイル名として使用できない文字は、\ : < > | " * /
フォルダ区切りは \(正規表現では\\)
ドライブは :
それらを踏まえて文字列を組み立てています。

^[a-zA-Z]\:\\(([^\\\:\<\>\|\"\?\*\/]+\\)*[^\\\:\<\>\|\"\?\*\/]*)?$

フォルダ名(ドライブ名、ネットワーク含む絶対パス)

ネットワーク上のフォルダは\\(正規表現では\\\\)で始まる。
それ以外のルールは上記通り。
それを踏まえて文字列を組み立てています。

^([a-zA-Z]\:\\|\\\\)(([^\\\:\<\>\|\"\?\*\/]+\\)*[^\\\:\<\>\|\"\?\*\/]*)?$

フォルダ名(ドライブ名含まない絶対パス、相対パスも含む)

^([a-zA-Z]\:\\|\\\\|\\)?(([^\\\:\<\>\|\"\?\*\/]+\\)*[^\\\:\<\>\|\"\?\*\/]*)?$

ディレクトリ名(windows以外 絶対パス)

Linuxなどは、ファイル名に含められる文字の範囲は広く、/ とNUL[0x00] 以外は使えます。
ここではとりあえずNULは無視し可視文字を対象としていますので、/ 区切りの文字列という構成にしています。

^\/([^\/]+\/)*[^\/]*$

ディレクトリ名(windows以外 相対パス含む)

相対パスを含むので、最初の文字 / は任意、という表現になっています。

^\/?([^\/]+\/)*[^\/]*$

ファイル名(Windows)

^[^\\\:\<\>\|\"\?\*\/]*$

ファイル名(Windows以外)

^[^\/]*$

パスワード(半角英数記号、英大文字、英小文字、数字、記号のうち3種必須、8文字以上)

^((?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])|(?=.*[a-z])(?=.*[A-Z])(?=.*[ -\/\:-@\[-`\{-~])|(?=.*[A-Z])(?=.*[0-9])(?=.*[ -\/\:-@\[-`\{-~])|(?=.*[a-z])(?=.*[0-9])(?=.*[ -\/\:-@\[-`\{-~]))([a-zA-Z0-9 -\/\:-@\[-`\{-~]){8,}$

パスワード(英大文字、英小文字、数字、記号すべての種類必須、8文字以上)

^((?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[ -\/\:-@\[-`\{-~]))([a-zA-Z0-9 -\/\:-@\[-`\{-~]){8,}$

半角の整数

`(+|-)?[0-9]+$

半角数値(".9" なども許容)

`((+|-)?[0-9]+)?(¥.[0-9]+)?$

BASE64形式

^([0-9A-Za-z\+\/]{4})*([0-9A-Za-z\+\/]{3}\=|[0-9A-Za-z\+\/]{2}\={2})?$
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?