kruglov, если введенные значения проверяются по-одному, то все равно, если надо менять шаблон, то надо менять код.
если где-то храниться шаблон для всех полей формы в виде регулярок, и проверка выполняется некой стандартной ф-ей CheckFormInputsFormat, то согласен, смысла в ctype-digit нету
вообще обрати внимание на время постов - я об оптимизации preg_match точно не думал