PHP 정규식 개발

// id 체크
if(!ereg("[[:alnum:]+]{5,10}",$id)) {
   echo "<script>
               alert('ID는 5~10자의 영문자나 숫자의 조합이어야 합니다!!');
      history.back(-1);
    </script>";
   exit();
}

// passwd 체크
if(!ereg("[[:alnum:]+]{4,8}",$passwd)) {
   echo "<script>
               alert('비밀번호는 4~8자의 영문자나 숫자의 조합이어야 합니다!!');
      history.back(-1);
    </script>";
   exit();
}

// 이메일 체크
if(!ereg("(^[_0-9a-zA-Z-]+(\.[_0-9a-zA-Z-]+)*@[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*$)", $email)) {
   echo "<script>
               alert('이메일주소가 잘못돼었습니다\n\n정확하게 입력해 주세요!!');
      history.back(-1);
    </script>";
   exit();
}

// 홈페이지 체크
if(ereg("([^[:space:]]+)", $homepage) && (!ereg("http://([0-9a-zA-Z./@~?&=_]+)", $homepage))  ) {
   echo "<script>
               alert('홈페이지 주소가 형식에 맞지 않습니다!!');
      history.back(-1);
    </script>";
   exit();
}

// 공백 체크
if(!ereg("([^[:space:]]+)", $name) || ereg("([[:space:]]+)",$name)) {
   echo "<script>
               alert('이름에 공백이 존재합니다!!\n\n이름을 공백없이 입력하세요!!');
      history.back(-1);
    </script>";
   exit();
}

// 한글만 허용 체크
for($i = 0; $i < strlen($name); $i++) {
   if(ord($name[$i]) <= 0x80) {
   echo "<script>
               alert('이름은 반드시 한글이어야 합니다!!');
      history.back(-1);
    </script>";
      exit();
   }
}

1