Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    [REGEXP]BBcode annidati, come ?

    Ho fatto una piccola classe che converte il bbcode. ora ho solo un problema, alcuni tag che dovrebbero essere annidati tipo non vanno , uso la funzione pre_replace e ho impostato il pattern in questo modo:
    codice:
    /(?i)\[QUOTE\=(.+?)\]([^\a]+?)\[\/QUOTE\]/is
    cosi funziona bene, c'è solo un problema, se voglio fare tag anniodati come:
    codice:
    [ QUOTE]
    test
     [ QUOTE]
     test 2
      [ QUOTE]
      test 2
      [ /QUOTE]
     test2
     [/QUOTE]
    [ QUOTE]
    nn funge, come devo fare ?

    Grazie
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  2. #2
    up
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  3. #3
    /(?i)\[QUOTE\]([^\a]+?)\[\/QUOTE\]/i
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  4. #4
    nn vedo il cambiamento tra il mio e quello che hai scritto te, apparte che hai tolto l'option
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  5. #5
    [supersaibal]Originariamente inviato da bonaprogram
    nn vedo il cambiamento tra il mio e quello che hai scritto te, apparte che hai tolto l'option [/supersaibal]
    invece provarlo prima di rispondere ?

    proprio perche' ho tolto l' option adesso il tuo esempio funziona, se usi l' option come la chiami tu il tuo esempio non funzionera' mai perche' scrivi
    [QUOTE]

    e non
    [QUOTE=..]

    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  6. #6
    emmm VVoVe: ho postato il codice sbagliato
    in effetti io faccio cosi:

    codice:
    ...
    12 => Array ( 0 => '/(?i)\[QUOTE\]([^\a]+?)\[\/QUOTE\]/i' , '<div class="BBquoteTitle">QUOTE</div><div class="BBquoteBody">\\1</div>' ) ,
    13 => Array ( 0 => '/(?i)\[QUOTE\=(.+?)\]([^\a]+?)\[\/QUOTE\]/i' , '<div class="BBquoteTitle">QUOTE \\1 </div><div class="BBquoteBody">\\2</div>' ) ,
    ...
    li ho messi entrambi, ho solo sbagliato a copiare riga
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  7. #7
    ho fatto anche un test fuori dal file

    echo preg_replace ( "/(?i)\[QUOTE\]([^\a]+?)\[\/QUOTE\]/i" , "\\1" , "[ QUOTE]\ntest1\n[ QUOTE]\ntest2\n[ /QUOTE]\ntest3\n[ /QUOTE]\n" ) ;

    nn funge me lo fa solo una votla

    in effetti , da così:

    codice:
    [ QUOTE]
    test1
    [ QUOTE]
    test2
    [ /QUOTE]
    test3
    [ /QUOTE]
    diventa così:

    codice:
    test1
    [ QUOTE]
    test2
    
    test3
    [ /QUOTE]
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  8. #8
    up
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  9. #9
    uhm ... prova cosi'

    codice:
    $testo = "
    [ QUOTE]
    test1
    [ QUOTE]
    test2
    [/QUOTE]
    test3
    [/QUOTE]
    ";
    function blockParser( $reg, $rep, &$block ) {
    	if( ( $match = preg_match( $reg, $block ) ) ) {
    		$block = preg_replace( $reg, $rep, $block );
    	}
    	if( $match ) {
    		blockParser( $reg, $rep, $block );
    	}
    }
    blockParser(
    	"/(?iU)(\[QUOTE\])([^\\1]+?)(\[\/QUOTE\])/",
    	"<div>\\2</div>",
    	$testo
    );
    echo $testo;
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  10. #10
    ok, grazie, va benissimo
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

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.