Решение выглядит подозрительно.
.isDigit кажется, слишком широкий, хотя и формально верный диапозон считает цифрами.
Например "99०۰۱۲۳۴۵۶۷۸۹.۹8" - все цифры с точкой
В любом топике должен быть дискурс. В данном случае новичек услышал про регулярки.
Вот он услышал и дальше пойдет, как утёнок фабриковать регулярку на любой пустяк.
Получится эдакое regexp-ориентированное программирование. Поэтому
пускай посмотрит и подумает что есть 2 варианта. И есть встроенная функция isDigit
которая почти решает задачу и осталось только добавить точку с сравнению.
А что касается всего диапазона Unicode символов. Ну тут главное чтоб тесты зашли
в зеленый сегмент. Позитивный сценарий есть - оно и ладненько.