Jquery RegEx Validación

Quiero verificar si un campo de entrada tiene el atributo "patrón" y, de ser así, realizar una comprobación de expresiones regulares contra dicho patrón. Sé que esto ya está hecho por HTML5, pero quiero manejar el evento yo mismo. Estoy recibiendo este error:Error de tipo no detectado: el objeto a-zA-Z no tiene el método 'prueba'

<code> ///Check Perform Reg///////////////////////////////////////////////////////
         if ($(this).attr("pattern")) {
             var reg = $(this).attr("pattern");
             var currentValue = $(this).val();


             if (reg.test(currentValue)) {
                 $(this).after($error.clone().text("Invalid Input.Try Again."));
                 $(".error:hidden").fadeIn("slow");
                 hasError = true;
                 return false;
             }

             }
        ///////////////////////////////////////////////////////////////////////////
</code>

Todavía no hay suerte,

También aquí está mi html:

<code><div>
    <input class="formInput" name="First Name" pattern="^[A-Za-z_-][A-Za-z0-9_-]*$" type="text"  id="frmFirst" min="2" maxlength="30"  required="required"/>
    <span>First Name</span>
</div>
</code>

Respuestas a la pregunta(5)

Su respuesta a la pregunta