Попробуйте изменить его на ^0[23894](\d{1,3}|\d{7})$
(не проверено). То, что вы написали, ищет 0, за которыми следуют либо 2,3,8,9,4 и еще одна цифра, либо две цифры, либо три цифры, либо семь цифр. {1,3}
указывает диапазон повторения 1-3 появления.
$
привязывает выражение в конце строки; если вы его опустите, любая строка, начинающаяся с шаблона, будет действительной.