アポストロフィ、スペース、およびハイフンを含むA-Za-z0-9のみを含む正規表現を使用して文字列を検証する必要があります。範囲。私は、次の方法でこれを無駄にしようとしました。私は間違って何をしていますか?A-ZA-Z0-9アポストロフィ、スペース、およびハイフンの適切な正規表現
これは、O'Neil、von-studder、vons studderを検証し、範囲が20文字を超えるか、A-Za-z0-9以外のアポストロフィ、スペース、およびハイフンを含む文字が含まれていると失敗します。
public static bool ValidLdapSearchString(string input, int minLength, int maxLength)
{
try
{
string stringValid = @"^[a-zA-Z0-9 " + Regex.Escape("'-") + "]{" + minLength + "," + maxLength + "}";
Regex regEx = new Regex(stringValid);
if (!string.IsNullOrEmpty(input) && regEx.IsMatch(input))
{
return true;
}
return false;
}
catch
{
throw;
}
}
実際には、 '' 'はアポストロフィです - ダッシュと呼んだのですか?その後、 ' - 'を削除する必要があります。 –
私は 'アポストロフィとダッシュが必要です - – CodeFunny
クール、それは正規表現が動作している必要があることを意味します。 em-dash '-'またはen-dash' -'を削除できます。 –