Rechercher : dans
Par :

PERL - extraire données d'un txt

Dernière réponse le 27 fév 2008 à 19:13:05 Polux100, le 28 fév 2007 à 14:32:31 
 Signaler ce message aux modérateurs

Bonjour a tous,

je travaille sur des fichiers textes dont je dois extraire traiter et restocker des données.
j'utilise Perl et je me demande si quelqu'un pourrait me conseiller et me donner des pistes.

chaque ligne de mon fichier ressemble à:
1.AA 152.25
2.AH 25.26

je voudrai extraire d'une part le premier chiffre (ou nombre), le groupement de lettre, et enfin la valeur décimale.

Je pensais ensuite mettre tout ca dans un tableau à plusieurs colonnes pour traiter ces données.

comment puis je extraire chaque partie m'interessant dasn chaque ligne?

merci d'avance

Configuration: Linux
Konqueror 3.4

Meilleures réponses pour « PERL extraire données d'un txt » dans :
[Windows] Fichier .CAB endommagé ou manquant VoirUn fichier CAB est un fichier contenant les fichiers nécessaires à l'installation d'une application. Si Windows vous affiche un des messages suivants, il peut être possible d'y remédier en lisant la suite de cet article : Erreur 1311. Fichier...
Entrées/sorties : Les flux en C++ VoirEntrées/sorties : les flux en C++ 1. Ouvrir un fichier en lecture 1.1 Ouverture du fichier "donnees.txt" en lecture 1.2 Lecture du contenu de "donnees.txt" 2. Ouvrir un fichier en écriture 2.1 Ouverture du fichier "donnees.txt" en...
Mise en forme de données VoirStyles de données Que la cellule contienne une valeur littérale saisie par vous-même ou le résultat d’une formule, vous affectez un style aux données de cette cellule en définissant ce que l’on appelle le format de la cellule : cela conditionne...

1

blux, le 1 mar 2007 à 09:16:36

Salut,

tu peux essayer avec les fonctions suivantes :

index : qui recheche la première occurrence d'une chaine dans une autre (ici, tu pourrais chercher '.' comme séparateur)
substr : qui extrait une chaine d'une autre

le principe serait de chercher le premier '.', d'extraire tout ce qui est à gauche de ce point, récupérer la partie droite, chercher l'espace, récupérer tout ce qui est à gauche, récupérer la partie droite, chercher le '.' et prendre ce qui est à droite

Lami20j te proposera sûrement plus rapide (mais beaucoup plus illisible, à mon avis...:-))).
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

2

azert, le 21 fév 2008 à 13:03:51

Bonjour en ce moment je suis en plein projet j'ai un fichier.txt enregistré sous mon disque (C:\text\fichier.txt) dur et je dois extraire les données de ce fichier.txt en passant par du langage c ou c++. Sachant que je dois afficher ma chaine extraite sous C++Builder_5 à partir d'un IHM (interface homme machine) que j'ai crée... Sachant que dans mon fichier.txt contient des points "." utilisé pour la séparation des données. je vous remercie d"avance tt aide seré la bienvenue.

Répondre à azert

3

blux, le 21 fév 2008 à 13:20:14

Merci de créer une nouvelle discussion, celle-ci se rapporte à Perl et non à C ou C++...

A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

10

 lami20j, le 27 fév 2008 à 19:13:05

Salut,

j'ai loupé celui-ci ;-))
lami20j

Répondre à lami20j

4

Sissiman_972, le 21 fév 2008 à 13:27:24

Commen sa PERL faut dire que je suis débutant!!!!!! :s

Répondre à Sissiman_972

5

Sissiman_972, le 21 fév 2008 à 13:32:07

Je suis en seconde année de BTS et je né jamai entendu parler de Perl?

Répondre à Sissiman_972

7

blux, le 21 fév 2008 à 14:04:52

Faut changer d'école !

A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

6

Sissiman_972, le 21 fév 2008 à 13:48:59

Donne moi une exemple stp sachant ke je dois récupéré ma chaine extraite dans un champ "edit" à partir d'un ihm crée sous c++BUIDER5.

Répondre à Sissiman_972

8

blux, le 21 fév 2008 à 14:05:39

Créé un nouveau message, car tu as ajouté une demande concernant C à une question sur Perl...

A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

9

Biguy, le 27 fév 2008 à 19:06:59

J'ai une problème au niveau d'une extration de donnée G commenC a coder je vous donne un bout de mon codage
é lerreur effectué lors de la compilation .

void CExtraction::extraireMesures()
{
string ligne;
ligne= lireLigne(1); //Ligne a lire
ligne= ligne.substr(0,4);

}

//##ModelId=4086CA420121
CMesure *CExtraction::lireMesure(int indice)
{
return &mesure;
}

//##ModelId=4086CA8F0122
int CExtraction::lireNbMesures()
{
return 0;
}

//##ModelId=47A5D86E00AB
CExtraction::CExtraction(string nomFichier)
{
nomduFichier= new CFichier("Test_BH.txt");
}


//##ModelId=47A5E07D0148
CExtraction::~CExtraction()
{
//delete;
}



ERREUR:
[Lieur Erreur] Unresolved external 'CExtraction::lireLigne(int)' referenced from:
C:\PROGRAM FILES\BORLAND\CBUILDER5\PROJECTS\BUILDER\EXTRACTION\CEXTRACTION.OBJ

Répondre à Biguy