|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 16 ![]() |
Bonjour,
dans une clause where de mon select, j'ai l'expression suivante : AND B0.sexternalid ~ '^[0-9]{8,9}O[A-Za-z0-9]{6}[0-9]+$' Que cela signifie-t-il exactement? Que mon champ B0.sexternalid doit être compris entre 0 et 9 ou entre A et Z (en majuscule) ou entre a et z (en miniscule)? Que veulent alors dire les expression {8,9} et {6}? Merci bien. |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
Si tu commençais par regarder la doc officielle
http://www.postgresql.org/docs/8.2/i...NS-POSIX-TABLE
__________________
La théorie, c'est quand on sait tout mais que rien ne fonctionne. La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi. Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi ! Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/ |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 16 ![]() |
Merci bien pour la doc.
Je l'ai parcourue. Si je ne me trompe pas, l'expression : AND B0.sexternalid ~ '^[0-9]{8,9}O[A-Za-z0-9]{6}[0-9]+$' pourrait être traduite en : AND (B0.sexternalid like ' où % désigne un ou plusieurs chiffres entre 0 et 9. Maintenant, je me suis peut-être complétement trompé Merci bien pour la confirmation. |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 16 ![]() |
Autant pour moi pour les smileys !!
Il faut bien sur comprendre : AND (B0.sexternalid like '8O6%' or B0.sexternalid like '9O6%') |
|
|
00
|
|
|
#5 |
|
Membre émérite
![]() ![]() Inscription : mars 2002 Messages : 770 ![]() |
euh nan, pas exactement;
l'expression réguliere AND B0.sexternalid ~ '^[0-9]{8,9}O[A-Za-z0-9]{6}[0-9]+$' correspond à ^ Qui commence par [0-9]{8,9} un chiffre entre 0 et 9 repeté 8 ou 9 fois --> 00000000 à 999999999 O le caractere O [A-Za-z0-9]{6} n'importe quel caractere dans [A-Za-z0-9] repete strictement 6 fois --> exemple : ETSQ6P [0-9]+ une ou plusieur chiffre $ pour dire qu'il n'y a plus rien derriere donc les chaines possibles seront par exemple : 12345678OPOIUYT8908098989098 789789787OIOH78J7 789789787OIOH78J7876786575756756756756576576576 |
|
|
00
|
|
|
#6 |
|
Membre émérite
![]() ![]() Inscription : mars 2002 Messages : 770 ![]() |
Avec les likes ca devient vite laborieux et meme des fois franchement impossible a realiser, etudie bien les expressions regulieres, c'est tres puissant, et pas seulement dans le sql, pour tes dev de prog, ca existe dans quasi tous les langages de prog
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : avril 2008 Messages : 16 ![]() |
Merci beaucoup pour tout.
C'est bien plus clair maintenant. On s'y remet. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com