La validación del formulario ZF2 no funciona correctamente para el correo electrónico

Tengo un cuadro de entrada con type = "email" y la validación con el validador de zend

<input type="email" name="email" > email </input>
'email' => array(
                'required' => true,
                'validators' => array(

                    array(
                        'name' => 'Regex',
                        'options' => array(
                            'pattern'=>'/^[a-zA-Z0-9.!#$%&\'*+\/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/', 
                            'messages' => array(
                                \Zend\Validator\Regex::NOT_MATCH=>'Please fill correct email ',
                            )
                        ),
                        'break_chain_on_failure' => true
                    ),

                ),

El problema es que si uso otra matriz para verificar

ESTA VACIO

zend regex de nuevo no muestra el error anterior, en su lugar muestra el error de zex regex predeterminado y si elimino IS_EMPTY, entonces funciona bien. error regex es

 1. input does not match to expression '/^[a-zA-Z0-9.!#$%&\'*+\/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/'

EXACTAMENTE NO PODEMOS ENTENDER POR QUÉ ESTO FUNCIONA BIEN SIN LA VERIFICACIÓN VACÍA Y NO FUNCIONA CON ELLO

Respuestas a la pregunta(2)

Su respuesta a la pregunta