|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
![]() ![]() Stéphane Consultant et formateur SAS et Cognos Inscription : avril 2009 Messages : 1 791 ![]() |
Bonjour,
je viens de me lancer dans les RegEx et je souhaitais valider mon code et les orientations à prendre, avec les spécialistes désormais identifiés. L'objectif est de récupérer les variables utilisées dans les SQL que je trace dans les LOG. Je pensais pouvoir lui dire : attrape tout ce qui est entre SELECT et FROM puis entre FROM et quelque chose qui peut être WHERE, ORDER ou HAVING. etc ... Mais je ne sais pas le faire en plus allégé que cela. J'ai donc dissocié les prxmatch des prxchange pour rentrer dans ce language étape par étape. Q1 : J'attrape bien les blocs mais est-ce du code optimisé ? Code :
Mon premier soucis intervient ensuite dans la création des ARRAY que je souhaite constituer depuis les blocs capturés. Pour cela j'ai vu que je devais utiliser CALL PRXNEXT. Mais je n'arrive pas à comprendre comment l'utiliser dans mon cas. Code :
Mon second soucis concerne les mots à nettoyer : DISTINCT, AND, OR BETWEEN etc ... car je ne veux au final que les noms de variables. Q3 : Dois-je / puis-je créer une liste de mots à exclure et lui demander de les supprimer des blocs récupérés ? Merci à vous.
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !Moteur de recherche dans les papiers SAS |
||||
|
00
|
|
|
#2 | ||
|
Membre confirmé
![]() Inscription : janvier 2010 Messages : 185 ![]() |
Bonjour Stéphane.
Voici une solution propre : Code :
Remarques:
Je te répondrai plus tard pour prxnext. |
||
|
|
00
|
|
|
#3 |
![]() ![]() Stéphane Consultant et formateur SAS et Cognos Inscription : avril 2009 Messages : 1 791 ![]() |
![]() Merci
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !Moteur de recherche dans les papiers SAS |
|
00
|
|
|
#4 | ||||
|
Membre confirmé
![]() Inscription : janvier 2010 Messages : 185 ![]() |
Re,
Voici un code qui marche avec prxnext. L'erreur sur le type numérique venait de l'absence de spécification quant à la longueur de stockage. C'est une usine à gaz=>je te conseille d'utiliser un scan par rapport à la virgule. Code :
Enfin pour ta question Q3, tu peux très bien utiliser prxchange (enfin !) en tant que premier traitement de ta data _null_ Code :
|
||||
|
|
00
|
|
|
#5 | ||
![]() ![]() Stéphane Consultant et formateur SAS et Cognos Inscription : avril 2009 Messages : 1 791 ![]() |
j'en étais à utiliser le SCAN.
Code :
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !Moteur de recherche dans les papiers SAS |
||
|
00
|
|
|
#6 | ||||
![]() ![]() Stéphane Consultant et formateur SAS et Cognos Inscription : avril 2009 Messages : 1 791 ![]() |
Voici donc avec l'appui de sasadm, le code commenté de la version 1.0
Code :
Code :
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !Moteur de recherche dans les papiers SAS |
||||
|
00
|
Copyright © 2000-2012 - www.developpez.com