Проверка корректности информации, введенной в форму

Исходный код этого примера:
<script>
var ok1=false
function test(form)
{
 if (form.text1.value == "")
 {
  ok1=false
  alert("Введите имя!")
 }
 else
 if ((form.text2.value.indexOf('@', 0)<1)||(form.text2.value.indexOf('@', 0)==form.text2.value.length-1))
 {
  ok1=false
  alert("Неправильно введён email")
 }
  else ok1=true
 if(ok1)
 {
  alert("Форма заполнена!")
 }
}
</script>

<form>
<p><label>Имя:<br><input type="text" name="text1"></label></p>
<p><label>Эл. адрес: <br><input type="text" name="text2"></label></p>
<p><input type="button" name="button1" value="Проверка" onClick="test(this.form)"></p>
</form>

Функции проверки корректности содержимого переменной:

function text (str) { return /^[0-9a-zA-Z_\.\-]+$/g.test(str); }

function numeric (str) { return /^[0-9a-zA-Z_\.\[\]\-]{6,20}$/.test(str + "z"); }

function mail (str) { return /^[a-zA-Z0-9_\.\-]+\@([a-zA-Z0-9\-]+\.)+[a-zA-Z0-9]{2,4}$/.test(str); }

.