Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    333

    una regex che aggiunga un tag a un lik

    Ciao a tutti
    ho un link dinamico per cui non so a priori cosa ci sia scritto a cui voglio aggiungere un tag <b></b> rispettivamente prima e dopo il testo usando una regex ma mi sfugge il procedimento
    Per fare un esemio il link potrebbe essere:
    <a href="www.miosito.it/cerca_testo">testo a cui aggiungere il bold</a>

    Grazie

  2. #2
    Codice PHP:
    $link preg_replace('/(\<a[^\>]+\>)(.*)(\<\/a\>)/i''\\1<b>\\2</b>\\3'$link); 

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    333
    Quote Originariamente inviata da ZioLuffio Visualizza il messaggio
    Codice PHP:
    $link preg_replace('/(\<a[^\>]+\>)(.*)(\<\/a\>)/i''\\1<b>\\2</b>\\3'$link); 
    Grazie
    Ti dispiacerebbe spiegarmela passo passo?

  4. #4
    Prima stringa: Pattern di riconoscimento. Il primo e l'ultimo / sono semplici delimitatori di pattern, non servono a niente. La 'i' sta per 'case-insensitive' cioé nessuna distinzione tra maiuscole e minuscole (funziona anche se hai <A HREF=...> </A>). Tutti i \ presenti (in questo caso) sono caratteri di escape perché i < e > sono caratteri speciali ('\<' significa semplicemente '<' letterale). Le parentesi tonde delimitano parti di pattern. Il pattern sopra riconosce questa sequenza: '<a' seguito da almeno un carattere diverso da '>' e infine un '>' ('<a>' non combacia, invece '<a href=>' sì); 0 o caratteri prima di '</a>' (può valere anche '<a href=></a>' senza niente in mezzo); tag '</a>'.

    Seconda stringa: sostituzione secondo il pattern. '\\1' e gli altri indicano il pezzo di pattern precedentemente identificato dalle parentesi tonde. Il risultato finale sarà costituito da: tag '<a...>' + '<b>' + qualunque cosa in mezzo ai tag A + '</b>' + tag '</a>'.

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.