Ce code est conçu pour tout supprimer, mais laissez des chiffres mais je veux préserver des points aussi. P> P>
3 Réponses :
Ne pas utiliser l'expression régulière:
>>> a='1.1.1.1'
>>> b = re.sub('[^0-9\.]', '', a)
>>> b
'1.1.1.1'
>>> a='comp.languages.python'
>>> b = re.sub('[^0-9.]', '', a)
>>> b
'..'
The [] means match only these characters.The [^] means match all characters EXCEPT these characters.0-9 is 0123456789. is . but be careful with . because outside [] it is often used to match any single character
Pas besoin d'échapper au . Code> dans les classes de caractères intérieures ( [...] code>) Parce que des caractères spéciaux perdent leur signification dans des classes de caractères.
Essayez
a = 1.1.1.1
b = re.sub('[^\d\.]', '', a)
Grande solution! Merci!
Voulez-vous que B à une version sûre de A, ou avez-vous besoin de diviser A en une matrice, par exemple. B = [1,1,1,1]?