a * в вашем выражении соответствует предыдущему символу a ноль или более раз, а не строке bla . Вам нужно будет использовать скобки. Попробуйте это:
new RegExp('(^bla){1}.+a$', 'i');
РЕДАКТИРОВАТЬ: Нет смысла использовать + в выражении, которое соответствует началу строки. Кроме того, поскольку вы говорите, что хотите сопоставить любые символы между bla и a , вам необходимо использовать + после.
РЕДАКТИРОВАТЬ: Гм, кажется, ни один не нуждается в скобках, как показывают другие ответы. Примечание для себя: прекратить чрезмерную разработку ваших RegEx и проверить свои ответы, прежде чем публиковать их. : P Это нормально:
new RegExp('^bla.+a$', 'i');