単純なスキームで数値を検証しようとしていますが、正規表現が苦手です。
数値の形式は次のとおりです。
XXXXXXX-XX-X
は~ の間のX
数字です。0
9
次のことを試しました/[0-9]{6}\-[0-9]{2]\-[0-9]{1}/
が、検証されません。
私が間違ったことをしたことがわかりますか?
単純なスキームで数値を検証しようとしていますが、正規表現が苦手です。
数値の形式は次のとおりです。
XXXXXXX-XX-X
は~ の間のX
数字です。0
9
次のことを試しました/[0-9]{6}\-[0-9]{2]\-[0-9]{1}/
が、検証されません。
私が間違ったことをしたことがわかりますか?
パターンにタイプミスがあります。3 番目]
は次のようになります}
。
/[0-9]{6}\-[0-9]{2}\-[0-9]{1}/
ただし、これをさらに単純化できます。文字クラスの外で aをエスケープする必要-
はなく、 の量指定子も必要ありません{1}
:
/[0-9]{6}-[0-9]{2}-[0-9]/
\d
使用している正規表現エンジンによっては、おそらく[0-9]
. JavaScript では同等ですが、多くのエンジンではわずかに異なります。\d
は、10 進数字ではなく Unicode 数字での使用を目的としています (たとえば、イースター アラビア数字と一致する可能性があります)。これが許容できる場合は、次を使用できます。
/\d{6}-\d\d-\d/
また、先頭または末尾の文字を禁止する必要がある場合は、パターンの周りに開始 ( ^
) および終了 ( $
) アンカーを追加することを検討してください。
/^[0-9]{6}-[0-9]{2}-[0-9]$/
または
/^\d{6}-\d\d-\d$/