Esta es con una expresión regular:
Using perl Syntax Highlighting
my($ultimo) = $texto =~ /.*<control>\s*(.+?)$/sm;Coloreado en 0.002 segundos, usando
GeSHi 1.0.8.4
La opción /s nos permite usar el comodín '.' para encontrar los caracteres finales de línea, mientras que la opción /m nos permite usar '$' para indicar la posición de un carácter de fin de línea. De esa manera podemos trabajar con texto multilínea.
Con el operador avaricioso '.*' encontramos todos los caracteres hasta el fin del texto. Luego, retrocede hasta encontrar el primer '<control>' (es decir, el último del texto). Después de encontrarlo, debe aparecer entre cero o más caracteres espacio, que no nos interesan ('\s*'), seguido de un texto ('.+?') que va hasta el final de línea ('$'), que capturamos con los paréntesis, y metemos en $ultimo, y terminamos.
Hay más formas, desde luego. Por ejemplo, si metes el texto en un
array, podrías acceder mirando en $array[-1] o $array[-2].