Ver Mensaje Individual
  #2 (permalink)  
Antiguo 31/05/2006, 11:01
jferrero
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 17 años, 11 meses
Puntos: 11
Con una expresión regular, por ejemplo.

Si sólo hay números, la solución más sencilla, es la obvia:
Código:
$x = '<span id="prueba">12345</span>';
# Buscamos un conjunto de dígitos en toda la línea:
($extracto) = $x =~ m/(\d+)/;
print $extracto;
Si queremos extraer todo lo que haya dentro de la etiqueta span, entonces:
Código:
$x = '<span id="prueba">12345</span>';
($extracto) = $x =~ m#>(.+)</span>#;
print $extracto;
Esto no parece muy claro, pero funciona en el ejemplo dado. Lo que estamos haciendo es quedarnos (()) con todos los caracteres (.+?) que estén entre la etiqueta de cierre (</span>) y el inmediatamente (?) ángulo de cierre de la etiqueta anterior (>), que, presumiblemente será el de apertura de span (si el html está bien escrito), por eso no la ponemos en la expresión regular.

Última edición por jferrero; 31/05/2006 a las 16:06