Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    94

    preg_replace: selezionare solo stringhe rimpiazzate

    Ciao a tutti, leggendo il manuale ufficiale ho capito che la funzione preg_replace() restituisce la stringa sostituita con il pattern indicato, se la trova, oppure la stringa inalterata.
    Io vorrei fare in modo di visitare ogni elemento di un array con tale funzione e riempire un altro array solo con le stringhe che la funzione ha rimpiazzato.
    Avete qualche idea?
    Posto il mio codice
    codice:
    function highlightWords($word,$array_da_visitare,$array_da_popolare){
    
            /*** loop of the array of words ***/
           
                    /*** quote the text for regex ***/
                    $word = preg_quote($word);
                    /*** highlight the words ***/
                    for($i=0;$i<sizeof($array_da_visitare);$i++){
                    //Vorrei che l' array venisse popolato solo se viene trovata la corrispondenza, quindi come modificare la seguente istruzione?
                    $array_da_popolare[$i]['description'] = preg_replace("/\b($word)\b/i", '<span class="highlight_word">\1</span>', $array_da_visitare[$i]['description']);
                    }
            /*** return the text ***/
            return $text;
    	}

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    94
    Risolto controllando la presenza della stringa con la funzione preg_match()

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.