/// <summary>
        /// Validates that the parameter must start with the specified <paramref name="value" />. Otherwise, an <see cref="ArgumentException" /> is thrown.
        /// </summary>
        /// <param name="validator">The <see cref="ParameterValidator{TParameter}" />.</param>
        /// <param name="value">The value the parameter must start with.</param>
        /// <returns>The same instance of <see cref="ParameterValidator{TParameter}" />.</returns>
        /// <exception cref="ArgumentException">Thrown when the parameter value does not start with <paramref name="value" />.</exception>
        public static ParameterValidator <string> StartsWith(this ParameterValidator <string> validator, string value)
        {
            if (validator.Value == null || value == null)
            {
                return(validator);
            }

            string exceptionMessage = string.Format(ExceptionMessages.VALUE_MUST_START_WITH, value);

            return(validator.StartsWith(value, exceptionMessage));
        }