Вы, вероятно, хотите заглянуть в будущее (если ваш движок поддерживает их, php / preg / pcre поддерживает)
Предварительные утверждения (или положительные утверждения) позволяют вам сказать «и после него должен стоять X, но X не должен быть частью совпадения). Попробуйте следующий синтаксис
\d{4}-\d{2}-\d{2}(?=[^0-9])
Утверждение это часть
(?=[^0-9])
Он говорит "после моего регулярного выражения, следующий символ не может быть числом"
Если это не дает вам того, что вы хотите / нужно, опубликуйте пример своего ввода и вашего PHP-кода, который не работает. Эти два элемента могут быть чрезвычайно полезны при устранении подобных проблем.