다음을 통해 공유


방법: ASP.NET 서버 컨트롤에서 패턴에 대한 유효성 검사

업데이트: 2007년 11월

사용자가 입력한 내용이 전화 번호, 우편 번호, 전자 메일 주소 등 미리 정의한 패턴에 일치하는지 확인할 수 있습니다. 이렇게 하려면 정규식을 사용합니다. 정규식에 대한 자세한 내용은 .NET Framework 정규식을 참조하십시오.

보안 정보:

기본적으로 ASP.NET 페이지에서는 악의적인 의도를 가진 사용자가 응용 프로그램에 스크립트 또는 HTML 요소를 전송하는지 여부를 자동으로 확인합니다. 자세한 내용은 스크립트 악용 개요를 참조하십시오.

정규식에 대해 유효성을 검사하려면

  1. RegularExpressionValidator 컨트롤을 페이지에 추가하고 다음 속성을 설정합니다.

    속성

    설명

    ControlToValidate

    유효성을 검사할 컨트롤의 ID입니다.

    ErrorMessage, Text, Display

    유효성 검사에 실패한 경우 나타날 오류의 텍스트와 위치를 지정하는 속성입니다. 자세한 내용은 방법: ASP.NET 서버 컨트롤의 유효성 검사 오류 메시지 표시 제어를 참조하십시오.

  2. ValidationExpression 속성을 정규식으로 설정하여 비교할 패턴을 설정합니다.

    참고:

    Visual Studio .NET 2005와 같은 시각적 디자이너를 사용하는 경우 RegularExpressionValidator 컨트롤에 정의된 미리 정의된 패턴 중에서 선택할 수 있습니다.

    유효한 패턴을 여러 개 사용할 수 있도록 설정하려면 세로줄 문자(|)를 사용하여 식을 구분합니다.

    참고:

    클라이언트측 유효성 검사에서 정규식은 ECMAScript(JavaScript)를 사용하여 평가됩니다. 이는 서버측 정규식 검사와 약간 다릅니다.

  3. ASP.NET 웹 페이지 코드에 유효성 검사 테스트를 추가합니다. 자세한 내용은 방법: 프로그래밍 방식으로 ASP.NET 서버 컨트롤 유효성 검사를 참조하십시오.

    다음 코드 예제에서는 RegularExpressionValidator 컨트롤을 사용하여 사용자가 유효한 미국 우편 번호를 입력했는지 확인하는 방법을 보여 줍니다. 유효성 검사기는 두 가지 패턴, 즉 다섯 자리인지 그리고 다섯 자리 다음 하이픈, 네 자리 숫자가 이어지는지를 검사합니다.

    ZIP: <asp:TextBox id="txtZIP" runat="SERVER"></asp:TextBox>
         <asp:RegularExpressionValidator 
           id="txtZIP_validation" runat="SERVER" 
           ControlToValidate="txtZIP" 
           ErrorMessage="Enter a valid US ZIP code."
           ValidationExpression="\d{5}(-\d{4})?">
         </asp:RegularExpressionValidator>
    
    ZIP: <asp:TextBox id="txtZIP" runat="SERVER"></asp:TextBox>
         <asp:RegularExpressionValidator 
           id="txtZIP_validation" runat="SERVER" 
           ControlToValidate="txtZIP" 
           ErrorMessage="Enter a valid US ZIP code."
           ValidationExpression="\d{5}(-\d{4})?">
         </asp:RegularExpressionValidator>
    

참고 항목

개념

ASP.NET 서버 컨트롤의 유효성 검사 형식

기타 리소스

유효성 검사 ASP.NET 컨트롤