|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : juillet 2011 Messages : 2 ![]() |
Bonjour,
J'ai quelques difficultés avec les expressions régulières. Sur la même requête SELECT, je dois identifier des nombres et les remplacer par 2 valeurs en fonction d'une expression régulière. La première expression régulière est peut commencer par 2 ou 3 lettres majuscules, doit être suivi de plus de 7 chiffres, peut finir par 2 ou 3 lettres majuscules Il faut qu'il y ai au moins 2 lettres soit au début soit a la fin exemple : AA0123456789AA AA0123456789 0123456789AA a remplacer par [Numéro1] Et la seconde si la première n'est pas trouvé, doit faire plus de 7 chiffres 0123456789 a remplacer par [Numéro2] Pour le moment mon expression régulière ressemble a Code sql :
Je ne sais pas comment faire pour remplacer l'expression 2 par '[Numéro2]', si l'expression 1 n'est pas rencontré. Mon expression régulière que j'ai déjà écrite, ne fonctionne pas comme je le souhaiterais. Pouvez vous m'aider ? Je reste a disposition pour des questions supplémentaires Cordialement, Valgrin |
||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Ingénieur développement logiciels Inscription : juin 2007 Messages : 480 ![]() |
Bonjour,
Avec un CASE et un REGEXP_LIKE on peut arriver à quelquechose. Voici ma proposition s'il faut remplacer tout le contenu du champ : Code :
Est-ce que le résultat est plus proche de ce que tu dois obtenir ? |
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : juillet 2011 Messages : 2 ![]() |
Résolu grâce au chat
mon expression était Code :
'[A-Z]{2,}[0-9]{7,}[A-Z]{2,}|[A-Z]{2,}[0-9]{7,}|[0-9]{7,}[A-Z]{2,}'
Merci a vous ! Mon expression finale ressemble plus a Code sql :
SELECT regexp_replace(regexp_replace(champ1, '[A-Z]{2,}[0-9]{7,}[A-Z]{2,}|[A-Z]{2,}[0-9]{7,}|[0-9]{7,}[A-Z]{2,}', '[numero1]'), '[0-9]{7,}', '[Numero2]') FROM table1 Mais merci de ta réponse, elle me parait efficace pour remplacer tout le contenu d'un champ mais ce n'est pas ce que je cherche a faire ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com