Yo te doy una primera explicación.
El texto está en una línea:
Using text Syntax Highlighting
:Chairface!chairface_darkhat@localhost PRIVMSG #locos :Hola a todos
Coloreado en 0.000 segundos, usando
GeSHi 1.0.8.4
Necesitamos fijarnos en cosas que nos sirvan de 'anclas' o 'puntos de referencia' a partir de los cuales podamos sacar la información que queramos.
En este caso, vemos que lo que queremos sacar está justo después del carácter ':'.
Pero no está claro hasta donde tenemos que recortar: en el primer caso, es hasta el símbolo '!'. Y en el segundo, hasta el final de línea.
Bueno, pues ya hemos deducido el patrón de búsqueda:
/:(.*?)!/ para el primero: buscamos todo lo que hay entre ':' y '!'.
/:(.*?)$/ para el segundo: buscamos todos los últimos caracteres a partir del ':'.
Ahora solo queda confeccionar la expresión regular.
Ahora bien... pueden surgir problemas porque el ejemplo dado no sea bueno...
Por ejemplo: ¿Qué pasa si en el texto final hay un carácter ':'?