2016-06-08 3 views
-1

Этот бит регулярного выражения помогает мне проверять номера IBAN, но это не позволяет пробелы. Некоторые люди добавляют пробелы к своим номерам IBAN, что противоречит проверке.regex doesnt allow spaces

Как я могу сделать так, чтобы он допускал пробелы в любом месте строки?

if (preg_match('/^[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}$/', $iban)) { 
    // do something 
} 
+4

Почему не сначала удалить пробелы, а затем проверить? –

+0

Простой ответ на ваш вопрос: 'preg_match ('/^[AZ] {2} [0-9] {2} [A-Z0-9] {1,30} $ /', $ iban)' - insert пробел в каждом классе символов '[]'. Но, возможно, вам стоит связать вопрос @SilentMonk. – ClasG

+1

@ClasG это неверно – devnull69

ответ

1
if (preg_match('/^[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}$/', str_replace(' ', '', $iban))) { 
    // do something 
}