3

5 桁または 9 桁の郵便番号を検証したい。私はこれを書きまし /^(\d){5|9}$/たが、何にも一致しません。

しかし、私が/^(\d){5}$/そのマッチングを5に適切に与えると.

助けてください。

4

3 に答える 3

6

次の正規表現が機能するはずです。

^(\d{5}|\d{9})$
于 2012-06-07T13:14:05.150 に答える
6

最後の 4 つをオプションにします。

^\d{5}(\d{4})?$

正規表現とはまったく関係がないため、開始/終了のスラッシュを削除したことに注意してください。それらはアプリケーション言語のアーティファクトです。

于 2012-06-07T13:14:20.887 に答える
1

一致する USPS ZIP+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
于 2012-06-07T18:12:09.077 に答える