IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Extraire une sous-chaine


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut Extraire une sous-chaine
    Bonjour

    Je souhaite obtenir dans une chaine une sous chaine placé entre deux caractères définis.
    Exemple : je veux obtenir la chaine placée entre les deux '/' :
    '01/01/1900' me donne donc '01'
    01/1/1900' me donne donc '1'

    Ma chaine est de type String.

    Je n'ai pas trouvé de fonction dans delphi qui le fasse. Mais peut-etre n'ai je pas cherché au bon endroit.
    si vous savez comment faire, je suis preneur!!

    Merci.

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Par défaut
    Il y a la fonction copy(s : string, Index : integer, Count : integer) : string;
    Pour plus de détails voir l'Aide de Delphi.
    A+
    N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2003
    Messages : 119
    Par défaut
    Bonjour tomy,

    Tu peux utiliser la fonction Pos

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var
       PartieDeTaChaine : string;
       lng       : integer;
    begin
      PartieDeTaChaine:= copy(aString, Pos('/', aString)+1, lng); 
    end;
    PartieDeTaChaine est le résultat que tu veux
    aString est la chaine dans laquelle tu veux prendre une sous chaine
    Pos('/', aString)+1 est le début de ta sous chaine
    lng la longueur que tu veux extraire.

  4. #4
    Membre éclairé Avatar de Dirk-Pitt
    Inscrit en
    Juillet 2007
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Juillet 2007
    Messages : 71
    Par défaut
    Dans Les Jcl ( JclStrings ), tu as entre autres StrBefore et StrAfter qui sont bien pratiques. Tu peux faire un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StrBefore( '/', StrAfter( '/', Chaine ) )

  5. #5
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par défaut
    tu peux utiliser la fonction ExplodeLazy (voir ICI le source)

    sinon ExtractStrings dans Classes.Pas
    ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  6. #6
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut
    merci!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Extraire une sous chaine d'une chaine
    Par penguin50 dans le forum Ruby on Rails
    Réponses: 0
    Dernier message: 21/09/2008, 15h50
  2. Sed extraire une sous-chaine lettre de lecteur
    Par eZula dans le forum Shell et commandes GNU
    Réponses: 12
    Dernier message: 05/03/2008, 07h34
  3. extraire une sous chaine d'un char*
    Par john123 dans le forum C
    Réponses: 7
    Dernier message: 13/10/2007, 00h20
  4. Réponses: 6
    Dernier message: 25/06/2007, 11h00
  5. Réponses: 2
    Dernier message: 09/09/2006, 10h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo