Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1532 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [Delphi] Expression régulière - nom de fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Delphi] Expression régulière - nom de fichier

n°1344108
varlau
Posté le 11-04-2006 à 14:17:37  profilanswer
 

Bonjour à tous,
 
dans mon appli, je souhaiterais, via une expression régulière, vérifier qu'un nom de fichier est valide (zorro.exe est autorisé alors que zor\ro*..exe ne l'est pas par exemple).
 
J'ai bien trouvé une expression qui fonctionne mais, accrochez-vous, elle est un peu longue ... :
 
^(([a-zA-Z]:|\\)\\)?(((\.)|(\.\.)|([^\\/:\*\?"\|<>\. ](([^\\/:\*\?"\|<>\. ])|([^\\/:\*\?"\|<>]*[^\\/:\*\?"\|<>\. ]))?))\\)*[^\\/:\*\?"\|<>\. ](([^\\/:\*\?"\|<>\. ])|([^\\/:\*\?"\|<>]*[^\\/:\*\?"\|<>\. ]))?$
 
Si vous avez plus simple, je suis preneur.
 
Pour info, j'utilise le composant TRegExpr (http://regexpstudio.com/TRegExpr/TRegExpr.html)  
 
Laurent.

mood
Publicité
Posté le 11-04-2006 à 14:17:37  profilanswer
 

n°1355666
SStep99
Posté le 28-04-2006 à 02:39:59  profilanswer
 

Je te propose une autre solution qui bloque les mauvais caratère dans un tedit
je sais pas si ca peu t'aider ?
 
 
 
procedure TEDITEUR.Edit1KeyPress(Sender: TObject; var Key: Char);
var flagnon:boolean;
var TempKey: Smallint;
begin
    TempKey := Smallint(Key);
flagnon:=true;
if  (key in ['a'..'z',#8]) then flagnon:=false;
if  (key in ['A'..'Z',#8]) then flagnon:=false;
if  (key in ['0'..'9',#8]) then flagnon:=false;
if tempkey=8 then flagnon:=false;
if flagnon then key := #0;
end;

n°1360017
antp
Super Administrateur
Champion des excuses bidons
Posté le 04-05-2006 à 21:00:11  profilanswer
 

A priori seuls | : * < > \ / ? " sont interdits, tout le reste doit passer
Dans ton test tu ne laisses que les a-z et les chiffres, non ?
La regexp valide tout un chemin je présume, donc commençant par une lettre de lecteur, etc. Mais elle me semble quand même fort longue [:figti]


Message édité par antp le 04-05-2006 à 21:00:27

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [Delphi] Expression régulière - nom de fichier

 

Sujets relatifs
récupérer des chiffres dans une expression (vbaexcel)[DELPHI] récupérer les infos d'un ac3.
Modifier les données d'un fichier.soucis pour la création d'un lien de téléch d'un fichier csv
Upload de gros fichier (local) par HTTPUtilisation de la commande echo redirigée vers un fichier
Générer une page html depuis un fichier textegénérer page html par le biais d'un fichier texte
NHIBERNATE "outer or full join must be followed by path expression"Fichier et commande dos
Plus de sujets relatifs à : [Delphi] Expression régulière - nom de fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR