Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    sostituzione in stringa

    Buon lunedì :-D
    Spiego subito il problema.


    Per simulare l'effetto evidenziatore in una stringa uso una sostituzione con le regex :

    Codice PHP:
    $ris='<span style="background-color:#99A8C6">\\1</span>'
    e poi

    Codice PHP:
    eregi_replace('('.strtolower($stringa_ricerca).')',$ris,  $dati[$i]["descrizione"]) 
    Tutto funziona fino a che la stringa di testo $dati[$i]["descrizione"] non contiene dei tag con all'interno la stringa di ricerca. Esempio se l'utente ha inserito degli [b] e la ricerca è "on"
    mi vien sostituito anche il tag strong.

    Utilizzerei strip_tags ma così facendo perdo definitivamente i tag.
    Qualche idea?

  2. #2
    Prova con:

    codice:
    $testo = preg_replace("/($stringa_ricerca)(?!([^<]+)?>)/i", "<span.....>$1</span>", $dati['descrizione']);

  3. #3
    grazie per la risposta,
    purtroppo non ho risolto il problema.

    questo è ancora il risultato che ottengo :
    Codice PHP:
    an style="font-size: medium;">Bardonecchiaan>
    an style="font-size: medium;">Via Calletan

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.