Python : Recherche d'un exposant ..
Résolu/Fermé
A voir également:
- Exposant en python
- Citizen code python - Guide
- Exposant clavier ✓ - Forum Windows
- E exposant clavier ✓ - Forum Windows
- Extraire données fichier texte python ✓ - Forum Python
- Python retour à la ligne dans le code - Forum Python
7 réponses
Je ne comprends pas, si tu as accès au texte pourquoi tu ne copie colle pas directement le caractère en exposant qui te pose problème dans la fonction find ou plutôt dans le deuxième code que je t'ai montrer ? Si tu cherche toujours une solution essaye de donner un bout de texte que je puisse mieux comprendre la situation.
Utilisateur anonyme
Modifié par fred1599 le 10/08/2010 à 13:53
Modifié par fred1599 le 10/08/2010 à 13:53
Il suffit de remplacer dans ton texte les "O" par des "°", non? Avec les regex toujours, je ne vois pas autrement.
Exemple :
Mais je crois que ce que tu veux c'est remplacer un exposant autre que °, et là je ne vois pas désolé.
Exemple :
texte="Il fait beau dans le sud, on a 32°C. Dans le nord la temperature moyenne est de 20OC" temp=re.findall("\d+OC", texte) for i in temp: texte=texte.replace(i, "°".join(i.split("O"))) print texte Il fait beau dans le sud, on a 32°C. Dans le nord la temperature moyenne est de 20°C
Mais je crois que ce que tu veux c'est remplacer un exposant autre que °, et là je ne vois pas désolé.
Bon, je suis désolé, je crois que je n'ai pas assez expliqué mon problème. J'ai un corpus de fichiers texte en pdf, dans lesquels ont peut trouver "2°C", avec donc le caractère ° que nous trouvons sur nos claviers français, et le même terme mais en remplaçant ° par un O en exposant (que je ne peux pas faire ici).
J'ai fait un pdf to text pour tous les fichiers du corpus, afin de n'avoir que des fichiers textes, et dans la conversion, le caractère ° se change en "¬?" et le O en exposant se change en "¬?".
Quand je fais ma recherche d'occurrences, je trouve tous les "2¬?C" en faisant une recherche des "2°C" (donc j'utilise directement le caractère ° dans la chaine que je mets dans la fonction find), mais bien entendu aucun "2¬?C".. car je ne sais pas comment exprimer dans ma commande le fait que le 0 est en exposant.
Je ne sais pas si c'est assez clair, mais déjà merci de votre attention..
J'ai fait un pdf to text pour tous les fichiers du corpus, afin de n'avoir que des fichiers textes, et dans la conversion, le caractère ° se change en "¬?" et le O en exposant se change en "¬?".
Quand je fais ma recherche d'occurrences, je trouve tous les "2¬?C" en faisant une recherche des "2°C" (donc j'utilise directement le caractère ° dans la chaine que je mets dans la fonction find), mais bien entendu aucun "2¬?C".. car je ne sais pas comment exprimer dans ma commande le fait que le 0 est en exposant.
Je ne sais pas si c'est assez clair, mais déjà merci de votre attention..
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
si j'ai bien compris quand tu ouvres tes fichiers texte, le O exposant et le ° apparaissent de la même manière "¬?"
pourquoi ne pas faire une recherche directement sur "2¬?C" dans les fichiers textes? Ainsi tu vas retrouver toutes les occurrences sans tenir compte du fait que ce soit un O ou °
après je sais pas si le caractère "¬" sera facile à lui faire accepter (attention notamment au codage)
j'espère que ça pourra t'aider sinon dis le et on essayera de trouver une autre idée
pourquoi ne pas faire une recherche directement sur "2¬?C" dans les fichiers textes? Ainsi tu vas retrouver toutes les occurrences sans tenir compte du fait que ce soit un O ou °
après je sais pas si le caractère "¬" sera facile à lui faire accepter (attention notamment au codage)
j'espère que ça pourra t'aider sinon dis le et on essayera de trouver une autre idée
Bon en fait, les ? ce sont des caractères que le navigateur ne peut pas afficher... :(
Dans le cas du ° il s'agit de ¬ suivit d'un signe infini, et dans le cas du O en exposant il s'agit d'un ¬ suivit du signe intégrale.
Je précise que quand je mets ° dans ma fonction find, il me trouve tous les caractères du type ¬ suivit du signe infini..
Dans le cas du ° il s'agit de ¬ suivit d'un signe infini, et dans le cas du O en exposant il s'agit d'un ¬ suivit du signe intégrale.
Je précise que quand je mets ° dans ma fonction find, il me trouve tous les caractères du type ¬ suivit du signe infini..
Char Snipeur
Messages postés
9696
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 297
12 août 2010 à 11:07
12 août 2010 à 11:07
Salut.
un exposant n'est pas un caractère, c'est un attribut. Lorsque tu effectue ta conversion pdf2text, tu as du texte simple, donc sans attribut. Il est alors impossible de détecter une lettre en exposant.
La bonne nouvelle, c'est que ça ne semble pas être la lettre "O" mise en exposant, car pdf2text te le traduit en ¬ suivit du signe intégrale. Il semblerait donc que tu ais deux codes pour le symbole "°".
Si tu regarde là par exemple : https://fr.wikipedia.org/wiki/Latin1
Sur la ligne Bx, tu vois le symbole ° (x0) et le symbole º (xA).
Donc essaie avec l'expression régulière :
En espérant que ça t'aide.
un exposant n'est pas un caractère, c'est un attribut. Lorsque tu effectue ta conversion pdf2text, tu as du texte simple, donc sans attribut. Il est alors impossible de détecter une lettre en exposant.
La bonne nouvelle, c'est que ça ne semble pas être la lettre "O" mise en exposant, car pdf2text te le traduit en ¬ suivit du signe intégrale. Il semblerait donc que tu ais deux codes pour le symbole "°".
Si tu regarde là par exemple : https://fr.wikipedia.org/wiki/Latin1
Sur la ligne Bx, tu vois le symbole ° (x0) et le symbole º (xA).
Donc essaie avec l'expression régulière :
re.findall('[°,º]C',texte)
En espérant que ça t'aide.
4 août 2010 à 23:22
Je ne suis pas sûr a 100% d'avoir compris ton problème mais j'espère malgré tout que cela pourra t'aider.
6 août 2010 à 13:39
Merci tout de même !