基本的に、英国の郵便番号の最初の一連の文字に一致する正規表現 (簡単) と、次の番号に一致する別の正規表現 (それほど簡単ではありません) が必要です。
可能な組み合わせと一致の例:
AA9A 9AA regex1: AA regex2: 9
A9A 9AA regex1: A regex2: 9
A9 9AA regex1: A regex2: 9
A99 9AA regex1: A regex2: 99
AA9 9AA regex1: AA regex2: 9
AA99 9AA regex1: AA regex2: 99
ポスコードのスペースは、わかりやすくするためにのみ存在します。存在する場合と存在しない場合があるため、無視する必要があります。
これら 2 つの正規表現、特に regex2 (数値の一致) については、いくつかの助けを借りることができます。ちなみに、これを MySQL 5.6 で実行します。
更新:注意: 最後の 3 文字は常に無視されます。これが常に適用される唯一のパターンです。私の例からわかるはずです。
更新 2:前に十分に明確でなかった場合は申し訳ありません。郵便番号を検証する必要はありません。市外局番と地区コードを抽出する必要があります。
UPDATE3:もう一度強調する: 空白は無視する必要がありますAA99 9AA
。AA999AA
99
更新 4:ご回答いただきありがとうございます。残念ながら、MySQL が正規表現の一致を抽出できないことがわかりました。さすが、MySQL、役に立たないことがまた証明されました。