J'ai une chaîne d'entrée comme ceci: a1b2c30d40
et je veux tokenizer la chaîne à: a, 1, b, 2, c, 30, d, 40
. Je sais que je peux lire chaque caractère un par un et garder une trace du caractère précédent pour déterminer si je devrais le marquer ou non (2 chiffres dans une rangée signifie ne pas le marquer) mais y a-t-il une manière plus pythonique de faire cela?fractionnement chaîne python
7
A
Répondre
13
>>> re.split(r'(\d+)', 'a1b2c30d40')
['a', '1', 'b', '2', 'c', '30', 'd', '40', '']
Sur le modèle: comme le commentaire dit \d
signifie « correspondre à l'un chiffre », +
est un modificateur qui signifie « correspondre à un ou plusieurs », donc \d+
signifie « correspondent autant de chiffres que possible ». Ceci est mis dans un groupe ()
, de sorte que l'ensemble du motif dans le contexte de re.split
signifie « split cette chaîne en utilisant autant de caractères que possible en tant que séparateur, capturant en outre des séparateurs adaptés dans le résultat ». Si vous omettez le groupe, vous obtiendrez ['a', 'b', 'c', 'd', '']
.
Questions connexes
- 1. Python, fractionnement des chaînes
- 2. phrases Fractionnement en Python
- 3. Python URL fractionnement
- 4. chaîne Fractionnement en C#
- 5. fractionnement de la chaîne
- 6. python fractionnement de chaîne Unicode/en conversion json
- 7. Python: fractionnement d'une chaîne de chemin contenant des guillemets
- 8. Chaîne de fractionnement en Python. J'ai besoin d'aide
- 9. Python - Fractionnement une chaîne dans une liste de caractères paires
- 10. Fractionnement sur le dernier délimiteur dans une chaîne Python?
- 11. AngularJS d'émission de fractionnement chaîne
- 12. Fractionnement JSON Chaîne Array Bash
- 13. Fractionnement chaîne Java avec guillemets
- 14. question de fractionnement de chaîne
- 15. fractionnement de chaîne personnalisé rapide
- 16. fractionnement d'une chaîne-> liste à vérifier
- 17. jQuery fractionnement() pas .... fractionnement?
- 18. Python fractionnement des numéros dans une liste
- 19. caractères Fractionnement d'un fichier texte en Python
- 20. Python fractionnement des chaînes d'un fichier texte
- 21. résultats de fractionnement chaîne Clojure dans IllegalArgumentException
- 22. regex fractionnement des étiquettes dans la chaîne
- 23. fractionnement chaîne sscanf ne fonctionne pas
- 24. Fractionnement chaîne avec une expression régulière
- 25. Fractionnement donné chaîne en deux variables - php
- 26. fractionnement de chaîne spéciale en Ruby
- 27. Fractionnement chaîne en tableau de chaînes Java
- 28. Exception pendant le fractionnement de la chaîne
- 29. fractionnement d'une valeur de chaîne C#
- 30. Erreur lors du fractionnement d'une chaîne avec une chaîne
Umm Je ne comprends pas très bien regex. Cela vous dérange-t-il de mettre quelques explications sur le modèle (\ d +)? – Hery
il se divise en chiffres/chiffres consécutifs ('\ d' est 0-9,' '+ est un ou plusieurs). – delnan
http://docs.python.org/library/re.html – Samizdis