英国で次の項目をフィールド検証するための疑似コードはありますか? 私はアメリカ出身なので、今はアメリカのものしか知りません。
- 住所1
- 電話番号
- 携帯電話番号 (これに関する特別なルールがある場合に備えて、ない場合があります)
- 郵便番号
英国で次の項目をフィールド検証するための疑似コードはありますか? 私はアメリカ出身なので、今はアメリカのものしか知りません。
住所 1 行目。ユーザーが自由形式で入力した内容を検証したい場合は、おそらく困惑します。ばらつきが大きいです。PostCode Address File (以下を参照) を使用して支援することができます。
通常、「標準」の住所が必要な場合、英国向けの Web サイトは郵便番号を要求し、ユーザーにその郵便番号のすべての住所から正しい住所を選択するように求めます。
電話番号と携帯電話番号。ここhttp://en.wikipedia.org/wiki/Telephone_numbers_in_the_United_Kingdomを参照してください。これらを検証するためのスクリプト (複数の言語) は、次の場所にあります: http://www.braemoor.co.uk/software/telnumbers.shtml
郵便番号の形式: http://en.wikipedia.org/wiki/UK_postcodes (検証用の正規表現が含まれており、有効な住所をリストする郵便番号住所ファイルを参照します)
住所 1 行目は、ほとんど何でもかまいません。家の番号は常にあるとは限りません。
電話番号: 市外局番の長さはさまざまです。全長が一定かどうかは断言したくありませんが、常に少なくとも 10 桁であると思います。通常、携帯電話番号 (IME) は 07 で始まりますが、固定電話は通常 01 または 02 で始まります。特別な番号 (無料、ローカル レートなど) は通常 08 で始まります。(編集: 繰り返しになりますが、ウィキペディアに良い記事があります。)
ウィキペディアには、正規表現を含む英国の郵便番号に関する優れた記事があります。
Perlには、英国の電話番号を処理できるNumber::Phoneモジュールがあります。Royal Mailには、住所の検証とリストのクレンジングのためのサービスがあります。
この種の質問でいつもそうであるように、過大な検証にとらわれないでください。最も可能性の高い、著しく不正な形式の入力を確認してから次に進みます。特定のロケールで使用されているプレフィックスと電話番号の長さを追跡しようとすると、膨大な時間の無駄になります。「無効」だと言って顧客を失うよりは、おそらく修正可能ないくつかの間違いを許すほうがよいでしょう。
(英国で得られる標準的な住所形式に最も近いのは、郵便番号と番地です。それでも例外は常にあります。)
英国の電話番号については、(残念ながら) 最善の策は、おそらく Ofcom から番号計画をダウンロードすることです (それらは、市外局番、「地理的番号」、個人番号、携帯電話番号、さまざまなサービス番号、さまざまな有料番号、および番号範囲からオペレーターへのマッピングもあります (ただし、後者はおそらく必要なものではありません)。