<PackageReference Include="NJsonSchema" Version="11.0.0-preview006" />

EmailFormatValidator

Validator for "Email" format.
using Newtonsoft.Json.Linq; using System.Runtime.CompilerServices; using System.Text.RegularExpressions; namespace NJsonSchema.Validation.FormatValidators { [System.Runtime.CompilerServices.NullableContext(1)] [System.Runtime.CompilerServices.Nullable(0)] public class EmailFormatValidator : IFormatValidator { private const string EmailRegexExpression = "^\\A(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)\\Z$"; public string Format { get; } = "email"; public ValidationErrorKind ValidationErrorKind { get; } = ValidationErrorKind.EmailExpected; public bool IsValid(string value, JTokenType tokenType) { return Regex.IsMatch(value, "^\\A(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)\\Z$", RegexOptions.IgnoreCase); } } }