Добрый день.
Возникла проблема при написании регулярного выражения.
Регулярное выражение должно находить квадратные скобки в строке, если внутри них есть любое кол-во любых символов, кроме букв.
С этим проблем не возникло, получилось следующее выражение
/^(\[(?:[^A-Za-z]+)?\])/g.test('[test]%#$%^') // false
Но потребовалось, чтобы оно так же возвращало false, если внутри скобок находится 4 или больше точки
reg.text('[...]#$%%') // true
reg.text('[...#]#$%%') // true
reg.text('[....]#$%%') // false
попробовал что-то такого вида
^(\[((?:[^A-Za-z]+)|(?!([\.]{4,})))?\])
(в более читаемом виде)
^(\[
(
(?:[^A-Za-z]+) | (?!([\.]{4,}))
)?
\])
но оно не даёт нужного результата.
Помогите модифицировать чтобы подходило по требованиям.
Заранее спасибо.