irsoy
Messages postés18Date d'inscriptionmercredi 7 février 2007StatutMembreDernière intervention 4 juillet 2008
-
9 mars 2007 à 10:18
troxsa
Messages postés553Date d'inscriptionjeudi 28 novembre 2002StatutMembreDernière intervention 2 octobre 2016
-
9 mars 2007 à 14:14
Svp mes amis,
Mon probleme c'est que :
Je veut chercher une chaine ben definitexte de forme bien defini. La chaine doit avoir la forme "TUxxxx" sachon que les xxxx sont des nombres allons de 0000 à 9999.
Exp de texte:
SSM
UTC
02MAR99999E001/01JAN07 24MAR07
RPL
TU606
16MAR07 16MAR07 5
C 735 Y126.Y126
NCE0605 TUNO0800
//
NEW
TU814
16MAR07 16MAR07 5
C 735 Y126.Y126
TUNO0900 CAI1050
//
SI LCT CHTR ADD P/C SPRINTOURS S/RESERVE ACC ENAC STP SLTS A BERHOUMA
Etape 2: C'est de mettre Juste avant les"//"une nouvelle ligne selon
- La "TUxxxx" trouvée. Ex:TU814 - La ligne avant les "//". Ex:TUNO0900 CAI1050
PAR Exemple:
TU814 correspand à MS9814
TU606 correspand à UX3084
ALORS, le texte devien:
SSM
UTC
02MAR99999E001/01JAN07 24MAR07
RPL
TU606
16MAR07 16MAR07 5
C 735 Y126.Y126
NCE0605 TUNO0800
NCETUN 878/UX3084
//
NEW
TU814
16MAR07 16MAR07 5
C 735 Y126.Y126
TUNO0900 CAI1050
TUNCAI 878/MS9814
//
SI LCT CHTR ADD P/C SPRINTOURS S/RESERVE ACC ENAC STP SLTS A BERHOUMA
Merci pour votre aide. C'est très Urgent SVP
-----------------------------------------------
En Informatique, tout est possible...
mais...
A+
irsoy
Messages postés18Date d'inscriptionmercredi 7 février 2007StatutMembreDernière intervention 4 juillet 2008 9 mars 2007 à 14:12
Drikce 06 & HVB, vous m'avez aider beaucoup, je vous remerci une autre foi. j'ais arrivé enfin de trouver la bonne solution. si vous avez d'autre, vous ete les bienvenu.
SOLUTION:
Dim Telex$ = My.Computer.FileSystem.ReadAllText("c:\fichier.txt")
Dim TabTELEX$() = Split(Telex, vbCrLf)
For i = 0 To TabTELEX.Length - 1
If TabTELEX(i).ToString Like "TU###" = True
OrElse TabTELEX(i).ToString Like "TU####" = True Then
SovTexte &= TabTELEX(i).ToString & vbCrLf
End If
Next
-----------------------------------------------
En Informatique, tout est possible...
mais...
A+
hvb
Messages postés939Date d'inscriptionvendredi 25 octobre 2002StatutMembreDernière intervention27 janvier 20093 9 mars 2007 à 10:54
toutes les fonction que tu evoque Drikce06, sont des fonctions vb6.
irsoy :
En .net, pour trouver l'index d'une chaine dans une autre, utilise :
ChaineSource.IndexOf(LaChaineAChercher)
Pour extraire une chaine dans une autre :
ChaineSource.Substring(IndexDeDebutDeSousChaine,TailleDeLaSousChaine)
Et comme le dit Drikce, peut être qu'il serait judicieux de travailler ligne par ligne en fesant un Split avec comme argument un retour chariot.
Cependant, dans ton cas l'utilisation d'expressions régulière (regex) peut surement t'aider.
Hvb aka Batto
bato.ltd at gmail.com
Vous n’avez pas trouvé la réponse que vous recherchez ?
hvb
Messages postés939Date d'inscriptionvendredi 25 octobre 2002StatutMembreDernière intervention27 janvier 20093 9 mars 2007 à 11:15
right, left, mid et instr ne sont pas des fonctions .net
Elles marchent sur un projet de base crée par Visual Studio, mais ceci est du à l'import de la réference Microsoft.VisualBasic,
qui est innacessible en c# , et donc à bannir dés que possible.
irsoy
Messages postés18Date d'inscriptionmercredi 7 février 2007StatutMembreDernière intervention 4 juillet 2008 9 mars 2007 à 12:31
Pour la chaine TU606, elle:
- A la forme TUxxxx,
- Est Alphanumerique,
- Commance par "TU" en majuscule: ^(TU) - Contien xxxx qui est un chifre: appartien à un intervale [0000-9999] - Se fini par un retour à la ligne: VbCrlf
Le question c'est: Comment je peut ecrire le syntaxe
Merci HBV pour le site
-----------------------------------------------
En Informatique, tout est possible...
mais...
A+
troxsa
Messages postés553Date d'inscriptionjeudi 28 novembre 2002StatutMembreDernière intervention 2 octobre 20161 9 mars 2007 à 14:14
Salut,
Si tu telecharge les 101 exemples vb 2005 de microsoft dedans tu as un exemple sur l'utilisation de RagEx
il me semble de tete pour trouver ce que tu recherche ça serait
^(TU\d) le "\d" veux dire tout ce qui est decimal ou numérique je crois
juste apres tu peux utiliser le point "." pour lire tout ce qui est apres ..., puis utiliser la propriété Remplace de ta fonction RegEx pour ré-écrire ce que tu veux !