Проблема в том, что [a-z]+(?!\d)
позволит ему соответствовать любым 1+ символам, за которыми не следует цифра, поэтому он будет совпадать с sampl
в вашем вводе, удовлетворяя утверждению нецифровой цифры на следующей позиции.
Выможет использовать это регулярное выражение с отрицательным прогнозом:
/^(?!.+\d)/
Это не даст совпадения, если в любом месте ввода появится цифра после 1+ любого символа.
RegEx Demo
Для повышения эффективности , вы также можете использовать это регулярное выражение:
/^(?!\D+\d)/
, которое не выполняется, если существует 1+ нецифров, за которыми следует цифра где угодно на входе.