Dividir cadena con "." (Punto) mientras se manejan las abreviaturas

Me resulta bastante difícil explicarlo, así que empezaré con algunos ejemplos de antes / después de lo que me gustaría lograr.

Ejemplo de entrada:

Hola Mundo

Esto es una prueba

El.S.W.A.T.Team

APLASTAR.

aplastar.

2001.A.Space.Odyssey

Salida deseada:

Hola Mundo

Esto es una prueba

El equipo SWAT

APLASTAR

aplastar

2001 una odisea del espacio

Esencialmente, me gustaría crear algo que sea capaz de dividir cadenas por puntos, pero al mismo tiempo maneja abreviaturas.

Mi definición de una abreviatura es algo que tiene al menos dos caracteres (carcasa irrelevante) y dos puntos, es decir, "A.B." o "a.b.". Esono debería trabajar con dígitos, es decir, "1.a.".

He intentado todo tipo de cosas con expresiones regulares, pero no es exactamente mi fuerte, así que espero que alguien aquí tenga alguna idea o sugerencia que pueda usar.

Respuestas a la pregunta(2)

Su respuesta a la pregunta