я хочу проверить ввод с помощью регулярных выражений | содержать 16 числа - PullRequest
1 голос
/ 02 июня 2010

У меня есть вход, я хочу его проверить.

Он должен принимать только цифры и должен быть 16, не больше и не меньше.

Как я могу это сделать, используя php и regex?

Ответы [ 4 ]

3 голосов
/ 02 июня 2010

регулярное выражение будет ^\d{16}$

preg_match("/^\\d{16}$/", $str);
2 голосов
/ 02 июня 2010
^\d{16}$

Экспликация:

  • ^ для начала строки (так что ничего до этого)
  • \d означает число (десятичное)
  • {16} означает «ровно 16»
  • $ для окончания строки (поэтому ничего после этого)
0 голосов
/ 02 июня 2010

Не лучше ли убедиться, что его 16 символов и цифр только с is_numeric() и strlen().

0 голосов
/ 02 июня 2010

Я думаю, что вам нужно для проверки кредитной карты

^ (\ d {4} [-]) {3} \ d {4} | \ d {16} $

это будет соответствовать:

1234-1234-1234-1234 | 1234 1234 1234 1234 | 1234123412341234

Обратите внимание, что это скопировано из regexlib

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...