文字列を受け取り、それに郵便番号の有効なリストが含まれていることを確認する関数があります。
function ValidateZipCodeString(listOfZipCodes) {
// Only 5-digit zip codes are allowed
// Zip codes can be separated by a comma, a space, or both
// Any other characters will cause the error label to display
var regex = /^\d{5}(\s*,\s*\d{5})*$/;
return regex.test(listOfZipCodes);
}
郵便番号の「有効な」文字列は次のようになります。
12345,67854
OR
12345 35647, 09873
BUT NOT
1234565
OR
asd45, 12346
文字列に問題がないことを検証する限り、これはそのままで正常に機能します。私が今それをする必要があるのは、コンマかスペースだけがあり、コンマとスペースの両方があるところです。したがって、上記の例を使用すると、
12345, 67854
OR
12345, 35647, 09873
どうやってやるの?
【明確化情報】
既存の機能に変更を加える限り、自分の意図を明確にする必要があります。私が言ったように、それはうまく機能し、警告ラベルを表示するかどうかを呼び出し元の関数に伝えるためにブール値を返す関数が必要です。
ValidateZipCodeString関数の機能に追加して、有効な郵便番号のリストが文字列に含まれている場合に、その文字列を変更して(コンマと文字列が各5桁の郵便番号の間にあることを確認してください)、次のように記述する必要があります。郵便番号の文字列が由来するテキストボックスへのその文字列。