2016-05-17 3 views
0

Я вернул preg_match, чтобы проверить, были ли начальные цифры 9477 или нет, и он работает правильно. Но теперь я хочу добавить еще одно условие для добавления 9477 или 9476 должно быть действительным.Как совместить две цифры в pregmatch?

Вот условие:

  1. должен содержать 11 цифр
  2. должен начинается с 9477 или 9476

Вот мой код:

preg_match('/^9477\d{7}$/',$Mnumber) 

ответ

0

Просто используйте (9477|9476)

echo preg_match('/^(9477|9476)\d{7}$/',$Mnumber); 

Вы также можете использовать:

  1. /^947(7|6)\d{7}$/
  2. /^947[76]\d{7}$/
1

Используйте чередование между двумя числами:

preg_match('/^947(?:7|6)\d{7}$/',$Mnumber) 

(?:7|6) не является захват группа, которая соответствует цифре 7 или 6. Группа без захвата намного эффективнее, чем группа захвата.

Вы можете сделать также:

preg_match('/^947[76]\d{7}$/',$Mnumber); 

[67] класс персонажа, который соответствует значного 7 или 6

1

Использование группировки в []

echo preg_match('/^947[76]\d{7}$/',$Mnumber); 
Смежные вопросы