Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    590

    cercare primo intero in una stringa

    ho una stringa del tipo
    "blabla 2013 fasc. 11, pt. 1, pp. 10-12"

    mi servirebbe estrarre quel '2013'

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    puoi usare l'espressione regolare
    [code]/^(?:\d*)(\d+)/
    No

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    590
    non funge, sei sicuro che serva tutto quel popo' di roba per cercare un intero?

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    590
    ho provato
    Codice PHP:
            preg_match('/(\d+)/',$temp,$anno); 
    e l'array $anno ha due elementi '2013', '2013'
    qualcosa non quadra neanche così

  5. #5
    Codice PHP:
    <?php
    $str 
    'blabla 2013 fasc. 11, pt. 1, pp. 10-12';
    $pattern "/(.*?) (\d+) (.*?)/";
    preg_match_all($pattern$str$matches);
    echo 
    $matches[2][0];
    ?>
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    590
    grazie, mi servirebbe solo una piccola correzione: in un altro caso sui numeri a 4 cifre mi da l'errore Undefined offset: 0
    gli interi a 4 cifre sono del tipo 4.102
    Ultima modifica di jimbo0; 11-07-2014 a 13:57

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    590
    up?

  8. #8
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Prima di eseguire la regexp basta cambiare il . con nulla.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    590
    avevo risolto con un'espressione simile a quella di tampertools
    /(?:\d*\.)?\d+/
    grazie a tutti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.