Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2014
    Messaggi
    47

    rimuovere caratteri speciali e sostituirlo con un whitespace in python

    Gentilissimi, mi sto cimentando in python e sono caduta su un dubbio e da un paio di giorni non riesco proprio ad uscirne fuori...
    Ho questo frammento di codice molto semplice:

    tweet = "sono esausto! ho avuto una pessima giornata...delusa!"
    clean_words = tweet.translate(None, ",.;@#?!&$")
    words = clean_words.split()


    print tweet
    print words

    L'output del codice è: ['sono', 'esausto', 'ho', 'avuto', 'una', 'pessima', 'giornatadelusa']

    quello che sto provando a fare e che ho fallito miseramente è non solo togliere i caratteri speciali ma sostituire questi con uno spazio!
    Ovvero: ['sono', 'esausto', 'ho', 'avuto', 'una', 'pessima', 'giornata', 'delusa'].
    Qualcuno riesce a dirmi come fare per favore?

  2. #2
    Puoi direttamente splittare su una regex usando re.split:
    codice:
    import re
    # ...
    words = re.split(r"\W+", tweet)
    (la regex \W+ matcha tutte le sequenze di 1 o più caratteri non alfanumerici)
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2014
    Messaggi
    47
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    Puoi direttamente splittare su una regex usando re.split:
    codice:
    import re
    # ...
    words = re.split(r"\W+", tweet)
    (la regex \W+ matcha tutte le sequenze di 1 o più caratteri non alfanumerici)
    Grazie mille. Non pensavo fosse così semplice

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.