Есть текст, который необходимо разбить на предложения с помощью функции preg_split()
Поскольку в тексте часто встречаются точка в дробном числе(например, 5.567) и между буквами(например, т.е., т.п.), составил такое рег выражение:
$pattern = "~([\.?!;])+(?![\w\.\w^\d\.\d)~";
Такое рег.выражние работает отлично, но есть загвоздка... практически всегда после сокращения "т.е." предложение не заканчивается, получается нужно "т.е." пропускать и искать точку(или воскл.знак, знак вопроса) дальше. По этому свое рег.выражение изменил так:
$pattern = "~([\.?!;])+(?![\w\.\w^\d\.\d^т\.е\.)~";
по такому выражению функция не правильно разбивает текст.
Подскажите что сделал неправльно, или может возможно по-другому переписать рег.выражение?