l'utilisation de la regex ci-dessous me permet de va lider un numéro de tel obligatoire mais dans mon cas de figure ce champ peut être vide et dans ce cas la regex m'indique que la chaine vide ne valide pas la regex
^(\+){0,1}[0-9/ \-\.]{8,25}$
En fait je voudrais étendre cette regex pout qu'elle intègre les champs vides/nuls
l'utilisation de la regex ci-dessous me permet de va lider un numéro de tel obligatoire mais dans mon cas de figure ce champ peut être vide et dans ce cas la regex m'indique que la chaine vide ne valide pas la regex
^(+){0,1}[0-9/ -.]{8,25}$
Je me permets de commencer par simplifier l'expression car plus elle est simple et plus facilement on peut comprendre ce qu'elle fait.
1) Je remplace {0,1} par ? (matche 0 ou 1 fois).
2) Je remplace (+) par + (pour un seul caractère les parenthèses sont inutiles, sauf bien sûr si les parenthèses devaient être capturantes).
3) Je remplace . par . (le caractère . perd son rôle spécial dans une classe de caractères entre crochets).
4) Je remplace - par - en le mettant juste après le crochet ouvrant (le caractère - dans une classe de caractères perd son rôle spécial quand il est le premier).
Cela donne donc ceci, que je trouve bien plus lisible :
^+?[-0-9/ .]{8,25}$
En fait je voudrais étendre cette regex pout qu'elle intègre les champs vides/nuls
Il suffit de rajouter un « ? » (matche 0 ou 1 fois) en regroupant par des parenthèses l'ensemble de l'expression :
^(+?[-0-9/ .]{8,25})?$
Le 22/09/2008 18:28, lmallia a écrit :
l'utilisation de la regex ci-dessous me permet de va lider un numéro de tel
obligatoire mais dans mon cas de figure ce champ peut être vide et dans ce cas
la regex m'indique que la chaine vide ne valide pas la regex
^(+){0,1}[0-9/ -.]{8,25}$
Je me permets de commencer par simplifier l'expression car plus elle est
simple et plus facilement on peut comprendre ce qu'elle fait.
1) Je remplace {0,1} par ? (matche 0 ou 1 fois).
2) Je remplace (+) par + (pour un seul caractère les parenthèses sont
inutiles, sauf bien sûr si les parenthèses devaient être capturantes).
3) Je remplace . par . (le caractère . perd son rôle spécial dans une
classe de caractères entre crochets).
4) Je remplace - par - en le mettant juste après le crochet ouvrant (le
caractère - dans une classe de caractères perd son rôle spécial quand il
est le premier).
Cela donne donc ceci, que je trouve bien plus lisible :
^+?[-0-9/ .]{8,25}$
En fait je voudrais étendre cette regex pout qu'elle intègre les champs
vides/nuls
Il suffit de rajouter un « ? » (matche 0 ou 1 fois) en regroupant par
des parenthèses l'ensemble de l'expression :
l'utilisation de la regex ci-dessous me permet de va lider un numéro de tel obligatoire mais dans mon cas de figure ce champ peut être vide et dans ce cas la regex m'indique que la chaine vide ne valide pas la regex
^(+){0,1}[0-9/ -.]{8,25}$
Je me permets de commencer par simplifier l'expression car plus elle est simple et plus facilement on peut comprendre ce qu'elle fait.
1) Je remplace {0,1} par ? (matche 0 ou 1 fois).
2) Je remplace (+) par + (pour un seul caractère les parenthèses sont inutiles, sauf bien sûr si les parenthèses devaient être capturantes).
3) Je remplace . par . (le caractère . perd son rôle spécial dans une classe de caractères entre crochets).
4) Je remplace - par - en le mettant juste après le crochet ouvrant (le caractère - dans une classe de caractères perd son rôle spécial quand il est le premier).
Cela donne donc ceci, que je trouve bien plus lisible :
^+?[-0-9/ .]{8,25}$
En fait je voudrais étendre cette regex pout qu'elle intègre les champs vides/nuls
Il suffit de rajouter un « ? » (matche 0 ou 1 fois) en regroupant par des parenthèses l'ensemble de l'expression :
^(+?[-0-9/ .]{8,25})?$
Olivier Miakinen
Le 22/09/2008 19:00, Mickaël Wolff a écrit :
^(+){0,1}[0-9/ -.]{8,25}$
/^+?[0-9/ -.]{8,25}$/
D'accord pour « +? » au lieu de « (+){0,1} ». D'accord pour « . » au lieu de « . ». D'accord pour « - » au lieu de « - » *mais* pas à cet endroit. Pas d'accord pour « / » (c'est inutile ici).
Le 22/09/2008 19:00, Mickaël Wolff a écrit :
^(+){0,1}[0-9/ -.]{8,25}$
/^+?[0-9/ -.]{8,25}$/
D'accord pour « +? » au lieu de « (+){0,1} ».
D'accord pour « . » au lieu de « . ».
D'accord pour « - » au lieu de « - » *mais* pas à cet endroit.
Pas d'accord pour « / » (c'est inutile ici).
D'accord pour « +? » au lieu de « (+){0,1} ». D'accord pour « . » au lieu de « . ». D'accord pour « - » au lieu de « - » *mais* pas à cet endroit. Pas d'accord pour « / » (c'est inutile ici).
Patrick Mevzek
Le Mon, 22 Sep 2008 19:01:43 +0200, Olivier Miakinen a écrit:
Il suffit de rajouter un « ? » (matche 0 ou 1 fois) en regroupant par des parenthèses l'ensemble de l'expression :
^(+?[-0-9/ .]{8,25})?$
Pour information, les chaînes E164 sont définies ainsi : <pattern value="(+[0-9]{1,3}.[0-9]{1,14})?"/> <maxLength value="17"/>
-- Patrick Mevzek . . . . . . . . . . . . . . Dot and Co <http://www.dotandco.net/> <http://www.dotandco.com/>
Le Mon, 22 Sep 2008 19:01:43 +0200, Olivier Miakinen a écrit:
Il suffit de rajouter un « ? » (matche 0 ou 1 fois) en regroupant par
des parenthèses l'ensemble de l'expression :
^(+?[-0-9/ .]{8,25})?$
Pour information, les chaînes E164 sont définies ainsi :
<pattern value="(+[0-9]{1,3}.[0-9]{1,14})?"/>
<maxLength value="17"/>
--
Patrick Mevzek . . . . . . . . . . . . . . Dot and Co
<http://www.dotandco.net/> <http://www.dotandco.com/>
Le Mon, 22 Sep 2008 19:01:43 +0200, Olivier Miakinen a écrit:
Il suffit de rajouter un « ? » (matche 0 ou 1 fois) en regroupant par des parenthèses l'ensemble de l'expression :
^(+?[-0-9/ .]{8,25})?$
Pour information, les chaînes E164 sont définies ainsi : <pattern value="(+[0-9]{1,3}.[0-9]{1,14})?"/> <maxLength value="17"/>
-- Patrick Mevzek . . . . . . . . . . . . . . Dot and Co <http://www.dotandco.net/> <http://www.dotandco.com/>
Dr J R Stockton
Le 22 Sep, 6:21 pm, Patrick Mevzek a ecrit:
Pour information, les chaînes E164 sont définies ainsi : <pattern value="(+[0-9]{1,3}.[0-9]{1,14})?"/> <maxLength value="17"/>
Merci. Maintenant en <http://www.merlyn.demon.co.uk/js-valid.htm#VTN>.
-- (c) John Stockton, near London, UK. Posting with Google. Mail: J.R.""""""""@physics.org or (better) via Home Page at Web: <URL:http://www.merlyn.demon.co.uk/> FAQish topics, acronyms, links, etc.; Date, Delphi, JavaScript, ....|
Le 22 Sep, 6:21 pm, Patrick Mevzek <pm-N200...@nospam.dotandco.com> a
ecrit:
Pour information, les chaînes E164 sont définies ainsi :
<pattern value="(+[0-9]{1,3}.[0-9]{1,14})?"/>
<maxLength value="17"/>
Merci. Maintenant en
<http://www.merlyn.demon.co.uk/js-valid.htm#VTN>.
--
(c) John Stockton, near London, UK. Posting with Google.
Mail: J.R.""""""""@physics.org or (better) via Home Page at
Web: <URL:http://www.merlyn.demon.co.uk/>
FAQish topics, acronyms, links, etc.; Date, Delphi, JavaScript, ....|
Pour information, les chaînes E164 sont définies ainsi : <pattern value="(+[0-9]{1,3}.[0-9]{1,14})?"/> <maxLength value="17"/>
Merci. Maintenant en <http://www.merlyn.demon.co.uk/js-valid.htm#VTN>.
-- (c) John Stockton, near London, UK. Posting with Google. Mail: J.R.""""""""@physics.org or (better) via Home Page at Web: <URL:http://www.merlyn.demon.co.uk/> FAQish topics, acronyms, links, etc.; Date, Delphi, JavaScript, ....|
Mickaël Wolff
Olivier Miakinen a écrit :
D'accord pour « +? » au lieu de « (+){0,1} ». D'accord pour « . » au lieu de « . ». D'accord pour « - » au lieu de « - » *mais* pas à cet endroit. Pas d'accord pour « / » (c'est inutile ici).
D'accord pour « +? » au lieu de « (+){0,1} ».
D'accord pour « . » au lieu de « . ».
D'accord pour « - » au lieu de « - » *mais* pas à cet endroit.
Pas d'accord pour « / » (c'est inutile ici).
D'accord pour « +? » au lieu de « (+){0,1} ». D'accord pour « . » au lieu de « . ». D'accord pour « - » au lieu de « - » *mais* pas à cet endroit. Pas d'accord pour « / » (c'est inutile ici).