5 桁または 9 桁の郵便番号を検証したい。私はこれを書きまし /^(\d){5|9}$/
たが、何にも一致しません。
しかし、私が/^(\d){5}$/
そのマッチングを5に適切に与えると.
助けてください。
5 桁または 9 桁の郵便番号を検証したい。私はこれを書きまし /^(\d){5|9}$/
たが、何にも一致しません。
しかし、私が/^(\d){5}$/
そのマッチングを5に適切に与えると.
助けてください。
次の正規表現が機能するはずです。
^(\d{5}|\d{9})$
最後の 4 つをオプションにします。
^\d{5}(\d{4})?$
正規表現とはまったく関係がないため、開始/終了のスラッシュを削除したことに注意してください。それらはアプリケーション言語のアーティファクトです。
米国郵政公社の ZIP+4 形式を扱っている場合は、次の正規表現を使用すると、より正確な一致が得られる可能性があります。
egrep -o '\b[[:digit:]]{5}-?[[:digit:]]{4}?\b'
この正規表現は、限られたコーパスに対してテストされました。あなたのマイレージは異なる場合があります。
cat << EOF | egrep -o '\b[[:digit:]]{5}-?[[:digit:]]{4}?\b'
12345
123456789
12345-6789
EOF