Edit

Share via


RegularExpressionAttribute Class

Definition

Specifies that a data field value in ASP.NET Dynamic Data must match the specified regular expression.

public ref class RegularExpressionAttribute : System::ComponentModel::DataAnnotations::ValidationAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false)]
public class RegularExpressionAttribute : System.ComponentModel.DataAnnotations.ValidationAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)]
public class RegularExpressionAttribute : System.ComponentModel.DataAnnotations.ValidationAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false)>]
type RegularExpressionAttribute = class
    inherit ValidationAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)>]
type RegularExpressionAttribute = class
    inherit ValidationAttribute
Public Class RegularExpressionAttribute
Inherits ValidationAttribute
Inheritance
RegularExpressionAttribute
Attributes

Examples

The following example shows how to use the RegularExpressionAttribute attribute to validate the FirstName and LastName data fields. The regular expression allows up to 40 uppercase and lowercase characters. The example performs the following tasks:

  • Implements a metadata partial class and the associated metadata class.

  • In the associated metadata class, applies the RegularExpressionAttribute attribute to the FirstName and LastName data fields, specifying the pattern and custom error messages.

using System;
using System.Web.DynamicData;
using System.ComponentModel.DataAnnotations;

[MetadataType(typeof(CustomerMetaData))]
public partial class Customer
{
}

public class CustomerMetaData
{
   
    // Allow up to 40 uppercase and lowercase 
    // characters. Use custom error.
    [RegularExpression(@"^[a-zA-Z''-'\s]{1,40}$", 
         ErrorMessage = "Characters are not allowed.")]
    public object FirstName;

    // Allow up to 40 uppercase and lowercase 
    // characters. Use standard error.
    [RegularExpression(@"^[a-zA-Z''-'\s]{1,40}$")]
    public object LastName;
}
Imports System.Web.DynamicData
Imports System.ComponentModel.DataAnnotations


<MetadataType(GetType(CustomerMetaData))> _
Partial Public Class Customer

    
End Class

Public Class CustomerMetaData
    
    ' Allow up to 40 uppercase and lowercase 
    ' characters. Use custom error.
    <RegularExpression("^[a-zA-Z''-'\s]{1,40}$", _
                       ErrorMessage:="Characters are not allowed.")> _
    Public FirstName As Object

    ' Allow up to 40 uppercase and lowercase 
    ' characters. Use standard error.
    <RegularExpression("^[a-zA-Z''-'\s]{1,40}$")> _
    Public LastName As Object
End Class

Remarks

You apply the RegularExpressionAttribute attribute to a property when you need to validate values for the property against a regular expression. The regular expression enables you to specify very precisely the format of valid values. The Pattern property contains the regular expression. If the value of the property is null or an empty string (""), the value automatically passes validation for the RegularExpressionAttribute attribute. To validate that the value is not null or an empty string, use the RequiredAttribute attribute.

The regular expression searches for an exact match, not using ^ before and $ at the end of the pattern produces the same results as using it. For a search hit, prepend and append the pattern with .*.

Constructors

RegularExpressionAttribute(String)

Initializes a new instance of the RegularExpressionAttribute class.

Properties

ErrorMessage

Gets or sets an error message to associate with a validation control if validation fails.

(Inherited from ValidationAttribute)
ErrorMessageResourceName

Gets or sets the error message resource name to use in order to look up the ErrorMessageResourceType property value if validation fails.

(Inherited from ValidationAttribute)
ErrorMessageResourceType

Gets or sets the resource type to use for error-message lookup if validation fails.

(Inherited from ValidationAttribute)
ErrorMessageString

Gets the localized validation error message.

(Inherited from ValidationAttribute)
MatchTimeout

Gets the timeout to use when matching the regular expression pattern

MatchTimeoutInMilliseconds

Gets or sets the amount of time in milliseconds to execute a single matching operation before the operation times out.

Pattern

Gets the regular expression pattern.

RequiresValidationContext

Gets a value that indicates whether the attribute requires validation context.

(Inherited from ValidationAttribute)
TypeId

When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

Methods

Equals(Object)

Returns a value that indicates whether this instance is equal to a specified object.

(Inherited from Attribute)
FormatErrorMessage(String)

Formats the error message to display if the regular expression validation fails.

GetHashCode()

Returns the hash code for this instance.

(Inherited from Attribute)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
GetValidationResult(Object, ValidationContext)

Checks whether the specified value is valid with respect to the current validation attribute.

(Inherited from ValidationAttribute)
IsDefaultAttribute()

When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
IsValid(Object)

Checks whether the value entered by the user matches the regular expression pattern.

IsValid(Object, ValidationContext)

Validates the specified value with respect to the current validation attribute.

(Inherited from ValidationAttribute)
Match(Object)

When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)
Validate(Object, String)

Validates the specified object.

(Inherited from ValidationAttribute)
Validate(Object, ValidationContext)

Validates the specified object.

(Inherited from ValidationAttribute)

Explicit Interface Implementations

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Applies to