방법: ASP.NET 서버 컨트롤에서 패턴에 대한 유효성 검사
업데이트: 2007년 11월
사용자가 입력한 내용이 전화 번호, 우편 번호, 전자 메일 주소 등 미리 정의한 패턴에 일치하는지 확인할 수 있습니다. 이렇게 하려면 정규식을 사용합니다. 정규식에 대한 자세한 내용은 .NET Framework 정규식을 참조하십시오.
![]() |
---|
기본적으로 ASP.NET 페이지에서는 악의적인 의도를 가진 사용자가 응용 프로그램에 스크립트 또는 HTML 요소를 전송하는지 여부를 자동으로 확인합니다. 자세한 내용은 스크립트 악용 개요를 참조하십시오. |
정규식에 대해 유효성을 검사하려면
RegularExpressionValidator 컨트롤을 페이지에 추가하고 다음 속성을 설정합니다.
속성
설명
유효성을 검사할 컨트롤의 ID입니다.
유효성 검사에 실패한 경우 나타날 오류의 텍스트와 위치를 지정하는 속성입니다. 자세한 내용은 방법: ASP.NET 서버 컨트롤의 유효성 검사 오류 메시지 표시 제어를 참조하십시오.
ValidationExpression 속성을 정규식으로 설정하여 비교할 패턴을 설정합니다.
참고:
Visual Studio .NET 2005와 같은 시각적 디자이너를 사용하는 경우 RegularExpressionValidator 컨트롤에 정의된 미리 정의된 패턴 중에서 선택할 수 있습니다.
유효한 패턴을 여러 개 사용할 수 있도록 설정하려면 세로줄 문자(|)를 사용하여 식을 구분합니다.
참고:
클라이언트측 유효성 검사에서 정규식은 ECMAScript(JavaScript)를 사용하여 평가됩니다. 이는 서버측 정규식 검사와 약간 다릅니다.
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>