Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di grisson
    Registrato dal
    Jul 2006
    Messaggi
    166

    estrarre testo tra due tag

    come faccio ad estrarre il testo da una situazione del genere:
    [tag1]testodaestrarre1[/tag1][tag2]testodaestrarre2[/tag2]

    vorrei che ad esempio nella variabile testo1 ci sia "testodaestrarre1" e nella variabile ad ex testo2 ci sia "testodaestrarre2".

    come si fa?

  2. #2

  3. #3
    Utente di HTML.it L'avatar di grisson
    Registrato dal
    Jul 2006
    Messaggi
    166
    è una specie di bbcode.
    devo fare una mini chat e volevo mettergli un minimo di formattazione

    avevo pensato di fare un replace ma se uno mi toglie un atg di chiusura mi si sballa l'html e mi saltano fuori dei pasticci.... quindi volevo essere suicuro che ci sia l'apertura e la chiusura...

    ovvio che ad esempio se c'è [tag1]ciao[tag2]ciaocioa[/tag2]ciao[/tag1] il testo da estrarre in tag 1 è ciao[tag2]ciaocioa[/tag2]ciao

  4. #4
    Mi sa che qui ci vuole qualche maestro delle espressioni regolari.

  5. #5
    Utente di HTML.it L'avatar di grisson
    Registrato dal
    Jul 2006
    Messaggi
    166
    boh, fa niente... mi strolgherò qualcosa d'altro.

    ciau!

  6. #6
    Originariamente inviato da grisson
    boh, fa niente... mi strolgherò qualcosa d'altro.

    ciau!
    Noo, ma che 'fa niente'! Si può fare tranquillamente, ma io non ne sarei capace. Basta aspettare l'arrivo di qualche utente esperto in espressioni regolari.

  7. #7
    arriva o non arriva? a me ste espressioni regolari entrano in testa e poi le dimentico...

  8. #8
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    se vuoi fare la sostituzione di determinati [tag quadri] con determinati <tag tradizionali> solo quando è presente il tag aperto e chiuso puoi usare le regular expression
    ti faccio un esempio
    codice:
    <script>
    function TrasformaTagQuadre(stringa,nomeTagQuadre,nomeTag){
      var str='\\['+nomeTagQuadre+'\\](.*?)\\[\\/'+nomeTagQuadre+'\\]';
      var re=new RegExp(str,'ig');
      var ris=re.exec(stringa);
      return stringa.replace(re,'<'+nomeTag+'>$1<\/'+nomeTag+'>');
    }
    
    str='il tag che si chiama tag1 lo trasformo in [tag1]bold[/tag1] mentre tag2 lo trasformo in [tag2]italic[/tag2]\n[tag1]così si pò scrivere [tag2]corsivo[/tag2] dentro il bold[/tag1]';
    str2=str;
    str2=TrasformaTagQuadre(str2,'tag1','b');
    str2=TrasformaTagQuadre(str2,'tag2','i');
    document.write(str+'
    '+str2);
    </script>

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.