0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【保存版】Form用正規表現

Last updated at Posted at 2021-03-23

今回はForm用の正規表現を書いていこうかなと思います。

1つ1つ説明していると長くなるので、分からないところは自分なりに調べてみてください。

それでは早速やっていきます。

#空白が無いか#

入力フォームでまず確認すべきことは空欄が無いか

これだけは関数として書きます。

    validateRequiredInput(...args) {
      // 入力フォームで空欄が無いかの確認
      let isBlank = false
      for (let i = 0; i < args.length; i = (i + 1) | 0) {
        if (!args[i] || args[i] === '') {
          isBlank = true
        }
      }
      return isBlank
    },

...argsで引数を何個でも受け取れるようにしています。

#メールアドレス#

const regex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/
regex.test(email)

#住所#

##都道府県##


const regex = /^[一-龥]+$/
return regex.test(prefecture)

漢字で制御

##市区町村##


const regex = /^[ぁ-んァ-ン一-龥]+$/
return regex.test(city)

ひらがな、カタカナ、漢字で制御

日本にはカタカナの市があるらしい。

興味深かったので一応載せておきます(笑)。

・山梨県南アルプス市

軽く調べたぐらいなので、もっとあるかも。

##番地##


const regex = /[0-9]+(-|ー)[0-9]+(-|ー)[0-9]/
return regex.test(number)

ちなみに最大桁数は「静岡県浜松市西区篠原町」の27409だそうです。

##郵便番号##


// ハイフンなし
const regex = /[0-9]{7}/
// ハイフンあり
const regex = /[0-9]{3}(-|ー)[0-9]{4}/
return regex.test(code)

#電話番号#


// ハイフンなし
const regex = /^0[789]0[0-9]{4}[0-9]{4}$/
// ハイフンあり
const regex = /^0[789]0-[0-9]{4}-[0-9]{4}$/
return regex.test(number)

#クレジットカード#

##番号##

やり方は電話番号とほぼ一緒


// ハイフンなし
const regex = /[0-9]{4}[0-9]{4}[0-9]{4}[0-9]{4}$/
// ハイフンあり
const regex = /[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{4}$/
return regex.test(number)

セキュリティコードも同じようにやってあげればいいので割愛します。

##名義##


const regex = /^[A-Z]+\s[A-Z]+$/
return regex.test(name)

大文字のみを適用

\sは半角スペースを表している

とりあえず今回はこんなところで終わりにします。

変更があれば随時更新していきます。

0
3
1

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
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?