ciao a tutti. Come posso estrarre un numero da una stringa tipo questa?
"ci sono 346 email da leggere"
io vorrei avere il numero 346.
Grazie.
ciao a tutti. Come posso estrarre un numero da una stringa tipo questa?
"ci sono 346 email da leggere"
io vorrei avere il numero 346.
Grazie.
ma la stringa ha sempre la stessa struttura?
Vincenzo Miele
diciamo di si..comunque la cosa importante è che la stringa contiene solo un numero...
ovvero non potrà essere così "sdfsd asdfasdf 234 sdfasd 34"
per intenderci...
potrà solo essere così "sdfsdf 345 sdfsdf asdfasd"
oppure "345 sfsdf sfsdf sdf"
oppure "sdf sdfsdf asdfasd asdf 345"
insomma quello che è sicuro è che ci sarà sempre solo un numero..
io devo tirar fuori quello che è numerico.
prova così:
ciaoCodice PHP:
$str = "345 sfsdf sfsdf sdf";
echo (int) $str;
allora come prima soluzione semplice è banale è utilizzare una explode sugli spazi e intercettare il numero.
$temp = explode(' ',$stringa);
$numero = $temp[2];
prova e fammi sapere.
Vincenzo Miele
e poi giustamente fai anche un cast
Vincenzo Miele
cheido scusa ianstilo, ma l'esempio che ti ho postato prima non è corretto...
Dovresti usare le regular epression penso (questo è solo un esempio):
ciao e scusa ancora per l'esempio errato di prima...Codice PHP:
$str = "345 sdf sdfsdf asdfasd asdf";
$num = (int)ereg_replace("[a-zA-Z]","",$str);
echo $num;
si per ora risolvo così..anche se penso che la procedura migliore sia scorrere tutti i caratteri della stringa..vedere se sono un numero oppure no...in caso affermativo concatenarli uno a uno in una variabile da castare successivamente.
ottima l'exp regolare ma se vengono utilizzati, in futoro, altri caratteri?
Giustamente come dice ianstilo per ora va bene ma occorre una soluzione migliore.
Devo ammettere però che la strada da seguire è quella di ken84.
Vincenzo Miele