Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    60

    Preg_replace e numeri negativi

    Salve stavo usando questo codice:

    Codice PHP:
    preg_replace("/([\D]+)?([\d]+)([\D]+)?/e","\$num[] = \"$2\";",$tmp); 
    mi estrae da una stringa come questa

    "Match Ratings : RateForm ((-535)) | Recent Form (-348) | League Form (-69)"

    i numeri e li inserisce in un array

    535
    348
    69

    ma senza segno.

    Potete suggerirmi come fare a prelevare anche il segno (se presente)?

    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    108
    ma sicuro sia corretta la regex?
    comunque dalla versione 5.5.0 del php il modificatore "e" è deprecato

    Personalmente farei così:

    codice:
    <?php
    $a = "Match Ratings : RateForm ((-535)) | Recent Form (-348) | League Form (-69)";
    preg_match_all("#([0-9-]+)#", $a, $num);
    
    print_r($num[1]);
    ?><?php
    $a = "Match Ratings : RateForm ((-535)) | Recent Form (-348) | League Form (-69)";
    preg_match_all("#([0-9-]+)#", $a, $num);
    
    print_r($num[1]);
    ?>

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2000
    Messaggi
    60
    Codice PHP:
    $res preg_match_all('#\-?[\d]+#'$tmp1$matches); 
    Ho risolto con questo codice, magari a qualcuno potrà essere utile.

    Per me potete chiudere

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.