в общем-то верно, и должно работать.
почему сами не проверили?
хотя, есть пара недочетов, не влияющих на работоспособность, но которые стоит учесть на будущее:
этот квантификатор можно не писать. отсутствие количественного квантификатора означает одно вхождение
этот символьный класс принято записывать сокращенно, как
\d
этот квантификатор записывается сокращенно как
*
один символ, без альтернатив, незачем оборачивать в символьный класс
в итоге, ваше выражение гораздо лучше было бы записать как
/^[1-9]\d*\.?\d{0,2}$/