Hola de nuevo
esparragos:
Veo que tienes algunas carencias en conceptos... empecemos:
La forma de obtener el atributo, como me has comentado, está perfecta: en
texto2 tendremos un String con todo lo que vamos a analizar.
Respecto a la manera de obtener
posicionMarcador también está correcta, aunque la posición de
"ranking " será en este caso la misma que la de
"ranking" (incluso la misma que la de
"rank"... etc.
indexOf busca la
primera incidencia de lo que le pasamos en
texto2.
longitudMarcador también está correcto, pero no nos va a servir para lo que queremos. Lo que necesitamos es la longitud de
"ranking " (con espacio). Esto es porque queremos hallar la posición de corte (cada
- entre caracteres indica la posición según
substring en la frase
"Hola texto cualquiera ranking 71234"):
Código:
"-H-o-l-a- -t-e-x-t-o- -c-u-a-l-q-u-i-e-r-a- -r-a-n-k-i-n-g- -7-1-2-3-4-"
| | | |
0 1 ... posicion de "ranking" |
posicion de "ranking" + "ranking ".length
Bueno, ahora que ya tenemos la primera posición por donde cortar, tenemos que pensar en la segunda. Ésta viene dada por el final de la frase, es decir,
texto2.length (o lo que sería lo mismo en el ejemplo: el último
-, el que está después del 4).
Advertir que
substring() tiene como parámetros dos números naturales, y tu has puesto un número y un String, lo cual no tiene mucho sentido (y quizás debería dar error).
Bueno, visto ésto creo que ya lo vas a entender mejor:
Código PHP:
/*
var texto2 = elementoActual.getAttribute('onmouseover');
alert(texto2);
*/
// Si está todo perfecto hasta aquí puedo considerar texto2 como cualquier texto terminado en un número (independientemente las cifras que tenga)
var texto2 = "Hola texto cualquiera ranking 71234";
// Posición del string "ranking" en el texto
var posicionMarcador = texto2.indexOf("ranking");
// Ahora necesitamos saber la longitud de "ranking " (con un espacio!)
var longitudMarcador = 'ranking '.length;
// Cortaremos texto2 por la posicion (posicionMarcador + longitudMarcador):
var corte = (posicionMarcador + longitudMarcador);
// Gracias a substring cogeremos la porción corte1 - final
var final = texto2.length;
var numeroBuscado = texto2.substring( corte, final);
alert(numeroBuscado);
Espero que el comentario en cada línea te ayude. Al final lo que conseguimos es este fragmento:
Código:
Hola texto cualquiera ranking 71234
Es decir, desde
corte1 hasta
final.
Si tienes más dudas en esto, adelante.
Un saludo.