Я не пробовал это, но Пробовал ли , работает : как насчет изменения общего паттерна для использования вместо этого позитивного взгляда? Таким образом, оно должно работать:
[0-9a-z](?=[0-9a-z]{0,4}\.)
В основном, это находит любой (буквенно-цифровой) символ, за которым следуют до четырех других буквенно-цифровых символов и точку. Это может просто работать, чтобы соответствовать последним пяти символам перед периодом подряд. Это адски неэффективно, и работает только с механизмами, которые допускают паттерны прогнозируемой переменной ширины.