begin process at 2010 02 10 01:22:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Divers

 > 

Aide et documentation

 > 

remplacement avec expressions régulières


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

remplacement avec expressions régulières

vendredi 4 avril 2008 à 16:40:54 | remplacement avec expressions régulières

zwyx

Bonjour à tous,

Je travaille sous Delphi6 et je souhaite effectuer des remplacements, de manière automatique, en utilisant les expressions régulières. J'ai déjà étudier pleins de tutoriaux concernant les expressions régulières, mais je n'arrive toujours pas à obtenir ce que je cherche, c'est pourquoi je sollicite votre aide.

Dans presque tout mon code (~3000 lignes), je n'ai mis d'espace ni avant, ni après, les opérateurs de test =, <, >, <=, >= et <>. J'ai remarqué tardivement que cela n'est pas correct d'après les normes standards de codage utilisées. Par contre, j'ai bien mis un espace avant et après le signe d'affectation :=.

Je cherche donc, pour ne pas le faire manuellement, l'expression régulière de remplacement, qui corrigerait mes espacements. De façon à transformer l'exemple suivant,

if i=0then
  i := 2
else if i<=2then
  if i<>84then
    i := 0;


en ce qui suit.

if i = 0then
  i := 2
else if i <= 2then
  if i <> 84then
    i := 0;


Je précise bien que ce n'est qu'un exemple bidon pour illustrer mon problème. Je n'ai bien évidemment pas écrit cet extrait de code.

Je vous remercie pour votre aide, et vous souhaite un bon week-end;
vendredi 4 avril 2008 à 20:57:46 | Re : remplacement avec expressions régulières

cantador

Membre Club
Réponse acceptée !

Pourquoi ne pas utiliser un outil qui fait tout ?
indentation, traitement des blancs etc etc

un clic et hop tout ton code nickel chrome et très beau

cantador

vendredi 4 avril 2008 à 23:20:09 | Re : remplacement avec expressions régulières

Kenavo

Réponse acceptée !
Delforexp bien sur !

Ken@vo

Code, Code, Codec !

samedi 5 avril 2008 à 12:37:48 | Re : remplacement avec expressions régulières

cantador

Membre Club
Mais oui ken@vo et qui va jusqu'à D 2007 !


cantador
samedi 5 avril 2008 à 13:31:13 | Re : remplacement avec expressions régulières
samedi 5 avril 2008 à 16:49:16 | Re : remplacement avec expressions régulières

zwyx

Merci pour vos réponses.

J'essayerai Delforexp dès lundi.

Quant-à Ctrl+J, j'essayerai aussi lundi, parce que je n'ai pas Delphi6 chez moi, mais seulement au boulot.

Mais merci à tous.
lundi 7 avril 2008 à 10:56:55 | Re : remplacement avec expressions régulières

zwyx

Effectivement,

Que demander de plus que ce que fait DelForExp, "a freeware Pascal source code formatter for Delphi". Merci de m'avoir fait découvrir cet outil.

Si quelqu'un sait comment faire avec les expressions régulères, je serais curieux de connaître la solution, même si mon problème est résolu.

Bonne semaine à tous.
lundi 7 avril 2008 à 13:37:38 | Re : remplacement avec expressions régulières

zwyx

Pour les curieux comme moi qui seraient intéressés, j'ai trouvé comment rechercher avec les expressions régulières, toutes les occurences de comparaison, pour lesquelles je n'ai pas mis un espace avant et après l'opérateur.

La formule est la suivante (ce n'est sûrement pas la seule valable, ni la meilleure d'ailleurs):
[^ ](=|<>|<=?|>=?)[^ ]

Voici quelques explications:
la classe entre crochets,  [^ ]:
    tout caractère sauf un espace
le motif entre parenthèses, (=|<>|<=?|>=?):
    le signe = , ou
    le symbole différent <>, ou
    le signe <, suivi de 0 ou 1 fois le signe =, ou
    le signe >, suivi de 0 ou 1 fois le signe =

Bon maintenant, je ne sais pas s'il est possible de les mettre en forme automatiquement. Mais pour ça, il y a DelForExp !

lundi 7 avril 2008 à 14:10:34 | Re : remplacement avec expressions régulières

cantador

Membre Club
Tu as le source de DelForExp...

cantador


Cette discussion est classée dans : expressions, souhaite, remplacement, régulières, if


Répondre à ce message

Sujets en rapport avec ce message

Expressions régulières [ par DiableHautain ] Bonjour tout le monde,Simple petite question:Peux-t-on utiliser des expressions régulières en Delphi (à la manière de VBScript ou JScript), afin de re Filtre ADOTable [ par MasterNKZ ] Salut à tous,Voici mon probléme : je dispose d'une base de données sous access et je veux l'exploiter en réalisant un programme sous delphi. Mais des Diffuser une applis avec un BD [ par padsou ] Salut à tous,j'ai un petit souci je souhaite diffuser une de mes applis avec des bases mais je ne souhaite pas installer pour autant de moteur de base Création dynamique ou libération à l'ouverture ? [ par wininfos ] Bonjour,Je souhaite réaliser une application dont l'interface change un peu en fct du status de l'utilisateur "Administrateur, Invité...". Je souhaite Je souhaite récupérer les informations d'un fichier avi. [ par stigmate101 ] Je souhaite récupérer les informations d'un fichier avi.En effet lorsque l'on fait un clic droit sur un fichier .avi on a la possibilité de voir certa Je souhaite lire les informations d'un .avi [ par stigmate101 ] Salut,Je souhaite lire les informations d'un .avi:codec, image (largeur, hauteur en pixels), durée, débit, format audio, Fréquence d'images,débit de d Changer de langue durant l'exécution [ par delphicpp ] Salut à tous, Je souhaite developper une application multilingue et je souhaite changer la langue locale en diverses autres langues sans redémarrer l traduire un malheureux symbole [ par askil2000 ] petit soucis :(j'ai mis cette fonction de remplacement dans mon programme:function Replace(Chaine,souschaine,remplacement : String): String;var Longu Appel de Fonction de façon "dynamique" [ par cerber943 ] Bonjour,Je souhaite savoir s'il est possible d'appeler une fonction en ayant son nom dans une variable sans pour autant faire une sorte d'interprétteu Tester l'exécution d'une appli [ par csweety13 ] Bonjour,je souhaite tester si mon exécutable est déjà lancé sur mon poste...mais je ne souhaite pas tester grace à la procédure FindWindow qui teste u


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales