Extraction d'une partie d'une chaine dans une chaine

Messages postés
2
Date d'inscription
vendredi 24 février 2006
Statut
Membre
Dernière intervention
26 février 2006
- - Dernière réponse :  Aide - 2 janv. 2019 à 17:31
Salut, je m'interresse au python, et j'aimerai realiser un prog qui va extraire une partie d'une chaine d'en une chaine complete. Je pensais mais qu'il fallait utiliser la librarie re mais je ne suis pas sur.


si quelqu'un a une idée?
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
2
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
13 mars 2006
8
7
Merci
Regarde cet exemple...C'est pas très académique... mais ca fonctionne vite.

chaine = 'aa bb www.free.fr_/a azertyuiop'
pos1 = chaine.find('www')
pos2 = chaine.find('/a')
#extraction sans le '/a'
sousChaine = chaine[pos1:pos2]
print sousChaine
#extraction avec le '/a'
pos2=pos2+len('/a')
sousChaine = chaine[pos1:pos2]
print sousChaine

Avec les expressions régulières. Cela me parait plus difficile.

Dire « Merci » 7

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CodeS-SourceS

Codes Sources 120 internautes nous ont dit merci ce mois-ci

Commenter la réponse de dfleury
Messages postés
2
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
13 mars 2006
8
1
Merci
Bonjour,

Tout simplement tu peux faire quelque chose du genre :

chaine = 'azertyuiop'
sousChaine = chaine[3:6]
print sousChaine

sachant que le début de la chaine commence à l'indice 0. Donc dans dontre exemple tu extrairas 'rty'

si sur l'editeur tu tapes F1 tu auras accès à l'aide et tu auras accès à toutes les méthodes associées au string.
- len
- find
- strip
- ....
Commenter la réponse de dfleury
Messages postés
2
Date d'inscription
vendredi 24 février 2006
Statut
Membre
Dernière intervention
26 février 2006
1
1
Merci
ok, mais le probleme c'est que ma chaine varie en caractère, commence par www et fini par /a
Pour ceux qui regardent le poste aujourd'hui et qui sont intéressé par le sujet, il faut se tourner vers les expressions régulières
Commenter la réponse de cs_berserk14