Я пытаюсь ввести строку без цифр, состоящую не менее чем из 4 символов. но когда я ввожу строку без чисел, она все равно выдает ошибку, и я не знаю, почему.
string pattern = "^[a-zA-Z]{4}$";
Regex rgx = new Regex(pattern);
string name = "evvFss";
if (!rgx.IsMatch(name))
{
throw new Exception("error");
}
else
{
Console.WriteLine("correct");
}
Это не должно выдавать ошибку, потому что строка не содержит чисел.
Удалось ли вам определить, какую ошибку вы получаете?
{4}
говорит, что это соответствует именно этому количеству символов, по крайней мере, этому количеству.
Используйте {4,}
, чтобы сделать его не менее четырех символов.
@younessouachao Вы можете нажать на галочку слева от ответа, чтобы отметить его как «принятый»: см. meta.stackexchange.com/questions/5234/…
fwiw для таких вопросов с регулярными выражениями, как этот, вы должны использовать regex101.com и тестировать его перед публикацией