Вы можете достичь чего-то близкого к этому: (([^!\?.\s!,])(?!\1)){15}
.Смотрите решение, работающее здесь .
Это решение, однако, имеет недостаток: оно терпит неудачу, когда находит шаблоны типа 131
или bab
.Если даже при такой неудаче решение работает на вас, тогда хорошо.Если нет, то это доходит до регулярного выражения.Вам придется выработать эту логику программно.
Отказ от ответственности: Сейчас у меня нет времени, и я позже отредактирую свой ответ, включив в него объяснение регулярного выражения и причину его неудачи Хотя кто-то еще моготредактируйте этот ответ и сделайте это для меня:) .