In my opinion there is a bug at all with regexp on line 219 in formvalidator.inc.php unit:
Current Code:
echo "obj.regexp=\"$regexp\";\n";
removing the double quotes makes javascript handling the regexp right,
so the code on line 208 should enclose the switch-statement in an if-block.
New Code:
if($regexp{0} == '/')
echo "obj.regexp=$regexp;\n";
else
{
switch($regexp)
{
case 'email': $regexp='JSVAL_RX_EMAIL'; break;
case 'telephone':$regexp='JSVAL_RX_TEL'; break;
case 'zip':$regexp='JSVAL_RX_ZIP'; break;
case 'money':$regexp='JSVAL_RX_MONEY'; break;
case 'creditcard':$regexp='JSVAL_RX_CREDITCARD'; break;
case 'postalzip':$regexp='JSVAL_RX_POSTALZIP'; break;
case 'postalcode':$regexp='JSVAL_RX_PC'; break;
}
echo "obj.regexp=\"$regexp\";\n";
}