Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786

    dividere stringhe troppo lunghe

    Salve,

    ho un problema con della stringhe di testo che sono formate da parole troppo lunghe.

    Sarebbe possibile dividerle in più righe tramite Asp ?

    in PHP ho trovato questo ma andrebbe convertito ASP:

    Codice PHP:
    --------------------------------------------------------------------------------
     
    $parole explode(" "$row["titolo"]);
                    
    //$parole = preg_split ("/\s/", $frase);

                    
    $len_max=20//precipitevolissimevolmente (26)
                    
    $titolo="";
                    
                    for(
    $i=0;$i count($parole);$i++)
                    {
                      
    $parola=$parole[$i];
                      if (!empty(
    $parola))
                      {
                        
    $titolo=$titolo chunk_split($parola$len_max);                   
                      }
                    }
         
                    
    $titolo=substr($titolo0strlen($titolo)-2);
                    
    //Spazio finale piu' fine stringa (messi da chunk_split) da togliere 
    Come si Fa ?

    Grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  2. #2
    Prova questa:

    codice:
    <%
    Function dividiStringa(sStr, iInizio, iProg)
    
    	Dim sTesto 
    	Dim lLenght
    	Dim sFinal 
    
    	If Len(sStr) > 20 Then
    	   If Mid(sStr, 21, 1) = " " Then
    		  sFinal = Mid(sStr, 1, 20) & "
    "
      	  	  response.write(sFinal)
    		  sTesto = Mid(sStr, 22, Len(sStr) - 21)
    		  iProg = iProg + 1
    		  dividiStringa sTesto, 1, iProg
    	   Else
    		  lLenght = InStrRev(Mid(sStr, 1, 20), " ")
    		  If Not lLenght = 0 Then
    			 sFinal = Mid(sStr, 1, lLenght) & "
    " 
    	  	  	 response.write(sFinal)
    			 sTesto = Mid(sStr, lLenght + 1, Len(sStr) - lLenght)
    		  Else
    			 sFinal = Mid(sStr, 1, 20) & "
    " 
      	  	     response.write(sFinal)
    			 sTesto = Mid(sStr, 20 + 1, Len(sStr) - 20)
    		  End If
    		  iProg = iProg + 1
    		  dividiStringa sTesto, 1, iProg
    	   End If
    	ElseIf Len(sStr) <= 20 And Len(sStr) <> 0 Then
    		 sFinal = sStr
     	  	 response.write(sFinal)
    	End If
    
    End Function
    
    response.write(dividiStringa("Ciao, questa è una prova di come funziona l'algoritmo ricorsivo di spezzatura di stringhe troppo lunghe!",1,1))
    %>
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    Grazie, ma pultroppo sicuramente io mi sono spiegato male

    quello che devo fare è dividere le parole lunghe della stringa.

    Esempio:

    oggi è bellooooooooooooooooooooooooooooooooooooooooooooo !

    in un div di 150px non ci va perchè lo divide così:

    oggi è
    bellooooooooooooooooooooooooooooooooooooooooooooo
    !

    Stravolgendo la Grafica

    Tramite Asp è possibile dividere le parole troppo lunghe ?

    tornando all'esempio dovrebbe fare una cosa del tipo:

    oggi è
    bellooooooooooooooooooooo
    oooooooooooooooooooooooo
    !

    Grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    Un problema simile al mio si è verificato sul Blog, li è stato risolto con js, a me serve una funzione ASP che taglia le parole con testo troppo lungo.

    Grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  5. #5
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    provo, eh
    codice:
    Dim str2Divide, numChars, resultStr
    Dim giri, resto, temp
    numChars = 30
    str2Divide = "belloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo!"
    
    giri = CInt(Len(str2Divide) / numChars)
    resto = Len(str2Divide) Mod numChars
    temp = str2Divide
    For i = 1 To giri
        resultStr = Mid(temp, 1, numChars)
        temp = Mid(temp, numChars + 1)
        If i < giri Then
            resultStr = resultStr & "
    "
        End If
    Next
    If resto > 0 Then
        resultStr = resultStr & "
    " & temp
    End If
    resultstr conterrà la stringa spezzata
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    non va

    come faccio ?


    p.s. anche questo forum soffre questo problema



    provaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  7. #7
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    Originariamente inviato da unreg
    non va
    Cosa di preciso?
    provaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  8. #8
    Guarda che la mia funziona proprio per il caso tuo, hai provato a copiare ed incollare il codice da me postato, sostituendo alla stringa di esempio la parola provaaaaaaa.....???

    Così:
    codice:
    <%
    Function dividiStringa(sStr, iInizio, iProg)
    
    	Dim sTesto 
    	Dim lLenght
    	Dim sFinal 
    
    	If Len(sStr) > 20 Then
    	   If Mid(sStr, 21, 1) = " " Then
    		  sFinal = Mid(sStr, 1, 20) & "
    "
      	  	  response.write(sFinal)
    		  sTesto = Mid(sStr, 22, Len(sStr) - 21)
    		  iProg = iProg + 1
    		  dividiStringa sTesto, 1, iProg
    	   Else
    		  lLenght = InStrRev(Mid(sStr, 1, 20), " ")
    		  If Not lLenght = 0 Then
    			 sFinal = Mid(sStr, 1, lLenght) & "
    " 
    	  	  	 response.write(sFinal)
    			 sTesto = Mid(sStr, lLenght + 1, Len(sStr) - lLenght)
    		  Else
    			 sFinal = Mid(sStr, 1, 20) & "
    " 
      	  	     response.write(sFinal)
    			 sTesto = Mid(sStr, 20 + 1, Len(sStr) - 20)
    		  End If
    		  iProg = iProg + 1
    		  dividiStringa sTesto, 1, iProg
    	   End If
    	ElseIf Len(sStr) <= 20 And Len(sStr) <> 0 Then
    		 sFinal = sStr
     	  	 response.write(sFinal)
    	End If
    
    End Function
    
    response.write(dividiStringa("provaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",1,1))
    %>
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    grazie Maximum !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  10. #10
    Prego.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

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.