Pagina 1 di 8 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 71
  1. #1

    Eliminare spazi superflui in una stringa

    i peli superflui me li tengo
    invece gli spazi non li voglio

    Problema:
    avendo una stringa composta da parole separate da spazi (ed essendo questa inserita dall'utente) voglio far collassare tutti gli spazi contigui in uno solo.


    Esempio:

    Codice PHP:
    'abc ab  abcd    pp d' 
    deve diventare

    Codice PHP:
    'abc ab abcd pp d' 

    quale è il modo migliore (leggasi: che impiega meno risorse, il più veloce) per farlo?

    grazie

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    a me viene in mente solo di ciclare tutti i caratteri per rimuovere quelli superflui.

    ciao

  3. #3
    Originariamente inviato da gianiaz
    a me viene in mente solo di ciclare tutti i caratteri per rimuovere quelli superflui.

    ciao
    mmm sì grazie... l'alternativa potrebbe essere una regex (forse nin zo) però volevo sapere se qualcuno sa quale è il modo migliore... magari buttate giù un po' di codice

    edit
    ho trovato questo:
    Codice PHP:
    $stringa ereg_replace(" +"," ",$stringa); 
    che ne pensate?

  4. #4
    Che va bene, toglie tutti gli spazi superflui, intesi come spazio (ma non come caratteri ad esempio di a capo "\r\n").
    Nel caso tu volessi togliere anche gli a capo puoi usare

    Codice PHP:
    $stringa preg_replace("\\s+"," ",$stringa); 
    dA .. foto di viaggio
    L'esperienza è il tipo di insegnante più difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  5. #5
    Originariamente inviato da Anªkin
    Che va bene, toglie tutti gli spazi superflui, intesi come spazio (ma non come caratteri ad esempio di a capo "\r\n").
    Nel caso tu volessi togliere anche gli a capo puoi usare

    Codice PHP:
    $stringa preg_replace("\\s+"," ",$stringa); 
    grazie
    :master: bè la stringa è inserita in un normale input di un form... secondo te gli a capo li devo togliere? :master:

  6. #6
    Originariamente inviato da Anªkin
    Codice PHP:
    $stringa preg_replace("\\s+"," ",$stringa); 
    Io direi
    $stringa = preg_replace('/\s{2,}/',' ',$stringa);

    sostituire anche gli spazi singoli con se stessi è inutile

  7. #7
    Originariamente inviato da skidx
    Io direi
    $stringa = preg_replace('/\\s{2,}/',' ',$stringa);

    sostituire anche gli spazi singoli con se stessi è inutile
    grazie... ma mi serve?

  8. #8
    Originariamente inviato da andrea.paiola
    grazie... ma mi serve?
    :master:

    è quello che hai chiesto nel primo post

  9. #9
    Originariamente inviato da skidx
    :master:

    è quello che hai chiesto nel primo post
    :master: ma non toglie anche gli a capo?

  10. #10
    Originariamente inviato da andrea.paiola
    :master: ma non toglie anche gli a capo?
    sì, hai detto che tanto è un campo input quindi gli accapo non ce li vuoi.
    Leva anche i tab multipli

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.