Je souhaite diviser une chaîne en utilisant un ou plusieurs caractères séparateurs.Chaîne fractionnée sur un certain nombre de caractères différents
E.g. "a b.c", scindé "" et "." donnerait la liste ["a", "b", "c"]. À l'heure actuelle, je ne vois rien dans la bibliothèque standard pour ce faire, et mes propres tentatives sont un peu maladroites. Par exemple.
def my_split(string, split_chars):
if isinstance(string_L, basestring):
string_L = [string_L]
try:
split_char = split_chars[0]
except IndexError:
return string_L
res = []
for s in string_L:
res.extend(s.split(split_char))
return my_split(res, split_chars[1:])
print my_split("a b.c", [' ', '.'])
Horrible! De meilleures suggestions?
est que "un bc" (un espace b point c)? Avez-vous plus de données d'entrée? – OscarRyz
Oui, c'est vrai. J'ai mis à jour la question pour être un peu plus clair –