LoginSignup
1
1

More than 1 year has passed since last update.

正規表現について

Last updated at Posted at 2022-09-27

正規表現とは

正規表現とは、文字列の一部分を抽出・置換したり
文字列が制約を満たしているかを調べるための表現方法で
メールアドレスに@が入っていないと登録できない等の制約をかける事が出来ます。

正規表現のパターン

パターン 意味
[ ] 正規表現における[ ](角括弧)は
[ ]内に囲まれた文字がマッチします
[a]だとaがマッチします、また文字列の間に
ハイフンを入れる事により
[a-z]aからzの文字がマッチする。
[a-z][ぁ-ん]
[ァ-ヶ]/\p{Han}/
[ぁ-んァ-ヶ一\p{Han}]
\d \dは数字のみマッチする。 [\d][a-z\d]
{n, m} 直前の文字がn回、多くてもm回出現するものにマッチする。 /\d{10,11}/
{n} 直前の文字がn回出現するものにマッチする。 /\d{10}/
. 改行以外のどの文字にもマッチする。 (?=.*?\d)
+ 直前の文字の1回以上の繰り返しにマッチする。 [a-z\d]+\z
\A 直後の文字が先頭にある文字列にマッチする。 \A[ぁ-んァ-ヶー]
\z 直前の文字が末尾にある文字列にマッチ [ぁ-んァ-ヶー]+\z

正規表現の参考例

忘備録も兼ねてる為、今後勉強中に覚えた事を追記していく予定です。

ひらがな、カタカナ、漢字のみ許可
/\A[ぁ-んァ-ヶ一\p{Han}]+\z/
ひらがなのみ許可
/\A[ぁ-んー]+\z/
カタカナのみ許可
/\A[ァ-ヶー]+\z/
漢字のみ許可
/\p{Han}/
半角英数字のみ許可
/\A[a-z0-9]+\z/i
ハイフン無し電話番号のみ許可(10桁)
/\A\d{10}\z/
ハイフン付き郵便番号のみ許可
 /\A[0-9]{3}-[0-9]{4}\z/
ハイフン無し郵便番号のみ許可
 /\A[0-9]{7}\z/

参考にさせた頂いたサイト

正規表現リスト
【Ruby のまずいコード】漢字を数える

1
1
2

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
1
1