Expression reguliere !!!

Signaler
Messages postés
47
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
28 mai 2008
-
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
-
bonjour à tous

Connaitrez vous une expression reguliere qui permettrait de savoir si
ce qui est rentré est sois un nombre flottant (ex : 2.6 ou 0.2 ) soit
un entier (ex: 5 ou 0 ) ?

Merci !

12 réponses

Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
B

onjour...

NON à la question mais il y a ceci...

if( Valeur.indexOf(".") != -1)
  alert( "A priori c\'est un Flottant")
else



  alert( "A priori c\'est un Entier")











;0)
Messages postés
47
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
28 mai 2008

a oui mais cest dune expression reguliere dont jai besoin !
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
Essaies avec cela ...

if( Valeur.search(/^[0-9.][0-9]*$/) != -1){  // Non Vide qui ne contient que des chiffres ou 1 point
  if( Valeur.search( /[.]/) != -1)
    alert("la chaîne est Flottant");    
  else  
    alert("la chaîne est Entier");  
}    

Mais je pense qu'avec un peu de recherche....!!!



;0)
Messages postés
47
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
28 mai 2008

/^[0-9.][0-9]*$/ ca ne laisse pas passé les virgules !! :(

Voila mon script généré dynamiquement via php et une base de donnée, dou le besoin de n'avoir qu'une seule chaine dexpression reguliere :






if(document.getElementById('chps_dyna_68').checked==true )
{
var temp = document.formulaire.faisabilite_delai.value;
var verif = /^[0-9.][0-9]*$/
if (verif.exec(temp) == null){alert("ERREUR la valeur nest ni un entier ni un nombre a virgule");return false;}

}

PS : merci de ton aide, car je suis vraiment allergique aux expressions regulieres !!!
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
bonjour,
   s'il ne faut que tester si c'est un chiffre : ERREUR la valeur nest ni un entier ni un nombre a virgule
   utiliser de isNaN(valeur) non ?
   les expressions régulières c'est formidable, mais c'est "gourmand".
<hr />
            cordialement   Bul       mon Site    M'écrire<hr />
Messages postés
47
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
28 mai 2008

non mais je vous assure cest vraiment d'une expression reguliere dont jai besoin :D
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
c'est pour un exercice alors ? car dans la "vie courante" isNaN est plus mieux.
<hr />
cordialement   Bul    mon Site    M'écrire<hr />
Messages postés
47
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
28 mai 2008

héhé on vas dire ca alors ! , personne n'est un pro des expressions regulieres ici ? :D
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
il y en a d'autres, mais cette documentationn'est pas mal.
<hr />
cordialement   Bul    mon Site    M'écrire<hr />
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
...ça ne laisse pas passé les virgules !! :(






Dans ce cas n'est il pas possible de remplacer les point par des virgules

, ou Vice Versaille,





avec des expressions Régulières BienSur ?













par exemple :





var szFind = new RegExp("[,]","gi");





Valeur = Valeur.replace( szFind, "\.");







Ben tiens Mince c'est faisable, CA ALORS...









PS
: pour la titille,...




personne n'est un pro des expressions regulieres ici ?...




on s'en bat on n'est pas la pour cela juste pour faire partager l'expérience issue d'un problème rencontré ou ce qu'un jour ou l'autre on a lu dans dans une doc  comme celle donnée par The BULTEZ...













;0}
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
salut PetoleTeam,

   <humour>on ne dit pas "

ou Vice Versaille," mais "lycée de Versailles"</humour>





je vais donner un exemple d'expression régulière dont j'use,
un peu plus poussée que ce que désire kengoo, dans
un autre langage ( Ruby ), mais les expressions régulières
étant quasi universelles, il ne lui reste qu'à simplifier
et adapter au javascript...
ici c'est le contrôle d'un champ du style [signe][entiers][.décimales]
avec un mini/maxi entiers/décimales autorisés...
je suis loin d'être un pro ( en expressions régulières encore moins )
et cela peut sûrement être nettement amélioré.



#-----------------------------------------------------------------------
def ctrNum(champ,entiers= 7,decimales=2) #---- contrôle si numérique ----
#-----------------------------------------------------------------------
 begin
  test='-?\d{1,'+entiers.to_s+'}(\.\d{0,'+decimales.to_s+'})?'
  # [-],  au moins 1 entier, et 7 maxi par défaut [ . et jusqu'à 2 décimales par défaut ]
  r=champ.match(test)
  return (r.to_s==champ)
 end
end




<hr />
cordialement   Bul    
mon Site
    
=Bul
M'écrire


<hr />
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
Aile haute

M
onsieur

BULTEZ, ça tombe bien il y en a 1, de L
Les seules expression régulières que je maîtrise sont bonjour, s'il vous plait, merci et au revoir c'est pour dire. Ce qui m'intéresse et m'intrigue, dans celles dont on parle, c'est la façon dont le noyau à gérer cela, c'est à dire le code n-1 mais bon mystère...








;0)