in src/Json.Schema.Validation/Validator.cs [153:184]
private void ValidateString(JValue jValue, JsonSchema schema)
{
if (schema.MaxLength.HasValue)
{
string value = jValue.Value<string>();
if (UnicodeLength(value) > schema.MaxLength)
{
AddResult(jValue, ErrorNumber.StringTooLong, value, value.Length, schema.MaxLength);
}
}
if (schema.MinLength.HasValue)
{
string value = jValue.Value<string>();
if (UnicodeLength(value) < schema.MinLength)
{
AddResult(jValue, ErrorNumber.StringTooShort, value, value.Length, schema.MinLength);
}
}
if (schema.Pattern != null)
{
string value = jValue.Value<string>();
if (!Regex.IsMatch(value, schema.Pattern))
{
AddResult(jValue, ErrorNumber.StringDoesNotMatchPattern, value, schema.Pattern);
}
}
}