Regex неправильно проверяет почтовый индекс

У меня возникла проблема с проверкой почтового индекса - он должен состоять ровно из 6-ти цифр, но паттерн "[0-9]{6}" реагирует как на неправильный ввод при кол-ве цифр меньше 6-ти, однако пропускает как корректный при любом кол-ве цифр больше 6-ти. Вот полный код на C#

 Console.WriteLine("Введите почтовый индекс в формате 000000");
 string s = Console.ReadLine();
 if (Regex.IsMatch(s, "[0-9]{6}"))
 {
 Console.WriteLine("Почтовый индекс введен корректно");
 }
 else
 {
 Console.WriteLine("Некорректный ввод");
 }

Ответы (1 шт):

Автор решения: KoVadim

Скорее всего нужно переписать регулярку вот так

"^[0-9]{6}$"

Почему? некоторые движки их добавляют неявно, а некоторые - нет. Данные символы являются "якорями" начала и конца строки.

→ Ссылка