Si ch
est une chaîne de caractères.
find
retourne la position de la chaîne passée en paramètre.lstrip
et rstrip
supprime toutes les occurrences du caractères passé en paramètre respectivement à gauche et à droite. >>> ch=" bonjour a tous " >>> ch.find("tous") 13 >>> ch.lstrip(' ') 'bonjour a tous ' >>> ch.rstrip(' ') ' bonjour a tous' >>> ch1=ch.lstrip(' ').rstrip(' ') >>> print(ch1) bonjour a tous >>> ch1.find("tous") 10
Une chaîne de caractères peut être traitée comme un tableau de caractères. On peut donc facilement extraire un caractère, ou une sous chaîne :
>>> ch1[10] 't' >>> ch1[3:7] 'jour' >>> ch1[10:] 'tous' >>> ch1[:10] 'bonjour a ' >>> ch1[:10-1] 'bonjour a'
Il s’agit d’une présentation très simplifiée des expressions régulières et de leur utilisation en python. Une présentation détaillée se trouve ici : http://docs.python.org/2/library/re.html
Une expression régulière permet décrire un modèle de chaîne de caractère.
Pour commencer, on peut utiliser :
abc
est vrai pour la chaîne abc
a*bc
est vrai pour bc, abc, aabc, …a+bc
est vrai pour abc, aabc, …ab?c
est vrai pour ac et abc.bc
Pour vérifier si une chaîne de caractères correspond à une expression régulière, il faut importer le module re
(import re
) et comparer avec None
.
>>> re.match("a*bc","abc") != None True >>> re.match("a*bc","bc") != None True >>> re.match("a*bc","abd") != None False
Pour chercher un sous chaîne correspondant à une chaîne : re.search
retourne un objet sur lequel on peut appeler start()
ou end()
pour avoir la position de début et de fin du motif.
>>> ch="0345345abdz43534543" >>> m=re.search("[a-z]+",ch) >>> print(m.start) >>> print(m.start()) 7 >>> print(m.end()) 11
Pour remplacer un motif par une valeur on utilise la fonction sub
;
>>> re.sub("[a-z]+",'X',ch) '0345345X43534543'
Il est aussi possible de découper en fonction d’un séparateur décrit comme une expression régulière :
>>> re.split("[a-z]+",ch) ['0345345', '43534543']
—- dataentry page —- type : Howto technologie_tags : Python theme_tags : Chaînes de caractères, Expressions régulières