Tengo un problemilla, bueno en realidad son varios. Para extraer el último carácter de una cadena no puedo utilizar el operador [ ] porque no es un array y no quiero extraer el último carácter con $ultimo = chop($cadena) porque no quiero modificar la cadena, solo quiero saber cuál es el último carácter.
El otro problema es el siguiente:
Tengo una variable $texto en el que he introducido un archivo de texto del que quiero extraer los posibles nombres propios y para ello miro las palabras que comienzan con mayúscula y que no están antecedidas por un punto o un punto y aparte. Para este procesamiento tengo que explorar toda la variable $texto parándome para cada una de las palabras que empiecen por mayúscula e introducirlas en un array que las guarda. Pero no sé cómo hacer esto con un while y una expresión regular, a ver si me explico, tengo esto:
Using perl Syntax Highlighting
while ($texto =~ /([A-Z]\w+)\s*/){
# aquí proceso el nombre $1
}
# aquí proceso el nombre $1
}
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
Pero sé que queda encajado en un bucle infinito porque encuentra siempre la misma palabra del principio, ya que no la elimino.
Muchas gracias a todos.