Пользовательское значимое сообщение об ошибке для Пехлеви Блок проверки допустимости RegEx

Я проверяю текстовое поле в своей форме следующим образом:

 $name = new Zend_Form_Element_Text('name');

 $name->setLabel('First Name:')
      ->setRequired(true)
      ->addFilter(new Zend_Filter_StringTrim())
      ->addValidator('regex',true,array('/^[(a-zA-Z0-9)]+$/'))
      ->addErrorMessage('Please enter a valid first name');

То, что я пытаюсь выполнить, - как я могу отобразить значимое сообщение об ошибке? Например: Если имя является 'XYZ-', как я могу отобразиться, '-не позволяется в имени.'

Существует ли способ, которым я могу получить доступ к тому, для какого символа regex перестал работать? Вы рекомендовали бы что-то еще в целом?

Я думал о записи нестандартного элемента верификации, но regex довольно прост, таким образом, я не вижу точку. Я не мог найти достойную документацию для зенда 'regex' блоком проверки допустимости нигде.

Если я не переопределяю сообщение об ошибке по умолчанию, я простой получаю что-то как: ';;; hhbhbhb' не соответствует против шаблона '/^ [(a-zA-Z0-9)] + $ /' - который я, очевидно, не хочу отображать пользователю.

Я ценил бы Ваши исходные данные.

7
задан Lenin Raj Rajasekaran 17 December 2011 в 18:02
поделиться

1 ответ

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

Error: Only the letters A to Z and numbers are allowed.

(что приводит меня к вопросу, почему имена могут содержать числа ...)

1
ответ дан 6 December 2019 в 11:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: