Auteur | Message |
---|---|
Beau Parleur
![]() |
Bonjour,
Ou re- , Je viens ici, parce que maintenant, le forum BulleForum est le forum préféré. Du coup, je reviens avec une question pour Hibou et tous les passionnés du langage Ada. Je programme pour le moment un petit programme qui fait une recherche de chemin d'accès pour permetre de compléter automatiquement ou semi automatiquement une ligne de commande. Mon problème est le suivant : lorsque je fait la recherche de chemin, le résultat du chemin courant pour un chemin relatif commençant par "./" donne "././" sur Linux ou ".\" donne ".\.\" sur Windows. Je cherche comment dans mon algo faire en sorte que seul le premier indicateur du chemin courant soit présent dans le résultat. Dans les source qui suivent Common fournit le type string_access qui est un accès sur une chaine de caractères et Result fourni un tableau variable 1 dimention de chaîne de caractères. A l'époque, j'avais écrit ce pseudocode, Voilà, corrigé. Source ada :-- On cherche une exression règulière dans les chemins d'accès aux fichiers hiérarchisés-- La lecture de contenu d'un chemin de dossiers est fournie par le langage.-- La fonction comparaison en expression régulière est fournie pas le langage.-- Chaîne Est L'Expression Réguliére-- Path Est Un Ensemble De Chamin D'Accès Aux Commandes.-- Chemin Est La Seconde Partie De Chaine Séparée Par Une Espace. Voici mon paquetage Completion 118 ligne: La procedure Completion (Line : in String; Full_Command : out Common.String_Access; Result : out Results.Result_Access) est la procedure principale de ce paquetage. Le premier paramètre est le chemin courant dans la ligne de commande, le second paramètre est le résultat qui est null si la complétion n'est pas unique, le troisième paramettres est l'ensemble des chemin possible selon le premier paramètres, si la complétion n'est pas unique. Source ada :with GNAT.Regexp; |
Beau Parleur
![]() |
je plaisante Hibou !
En réalité, je voulais te demander si tu peux si tu sais amméliorer ou comment l'améliorer. Très cinsèrement, pour une fois, c'était de l'humour en espérant en avoir. La question serait alieurs. Mais j'ai laissé tombé. J'avais mis un smiley quelque part. ;-) ![]() |
Administrateur
![]() |
J’étais quand‑même en train d’essayer d’avoir une idée, jusqu’à ce que je vois le deuxième message.
J’ai peut‑être lu trop vite le premier message, mais sur Linux par exemple, dans les expressions régulières pour les chemins, le premiers point ne correspond qu’à un point, toujours, il n’a pas la fonction de correspondre à un caractère quelconque comme dans le reste de l’expression. C’est ce dont je crois me souvenir, mais il faudrait vérifier. En marge, il faudra vraiment qu’un jour je corrige ce problème de mise en page avec les boites CODE. Mais je ne sais pas quand je serai assez en forme et quand j’aurai assez le temps pour ça. |
Beau Parleur
![]() |
Ah oui, heureusement que je t'ai stoppé rapidement.
Désolé pour la blague, je réutilise du code qui fonctionne comme d'hab ou presque. Bref. Merci pour ton soutient. C'est une joie de partager avec toi la passion de la programmation, en plus avec Ada. |