Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<script>var s='Placenta antérieur BI. - Distance col :   le 01/01/2010'
		var s1='Placenta antérieur BI.'
		var s2='Placenta antérieur BI. - Distance col : 12  le 01/01/2010'
		var s3='Placenta antérieur BI. - Distance col : 12  le'
		var rexExp='^Placenta antérieur BI\.$|^Placenta antérieur BI\. - Distance col : (.*)  le [0-3]{1}[0-9]{1}/[0-1]{1}[0-9]{1}/[0-9]{4}$'
 
		var ref=new RegExp(rexExp,'g');
		if (ref.test(s))
		{
			alert('s');
		}
		if (ref.test(s1))
		{
			alert('s1');
		}
		if (ref.test(s2))
		{
			alert('s2');
		}
		if (ref.test(s3))
		{
			alert('s3');
		}
</script>
bonjour, ci dessus un petit script javascript qui doit vérifier que les expressions s, s1, s2 et s3 répondent a l'expression regExp.

Là ou j'ai un problème, c'est que je n'arrive pas a trouver la bonne expression.
Quoique je tente, 2 des 4 string répondent a mon expression.

la donnée importante du problème est que cette expression est auto générée dynamiquement en fonction d'un phrase de départ.
du type:

je ne suis [text:] le [date:] à [heure:].

>> devrait renvoyer une expression permettant de valider:

s0 >> je suis.
s1 >> je suis. dispo le à
s2 >>je suis. dispo le 12/02/2008 à
s3 >>je suis. dispo le 12/02/2008 à 12h25
s4 >>je suis. le 12/02/2008 à 12h25
s5 >>je suis. le à 12h25
s6 >>je suis. dispo le 12/02/2008 à 12h25
s...>> etc...

le modele est simple:
si aucun élément entre crochet n'est rempli, la chaine est egale au début jusqu'au premier point.
sinon elle est egale a tous les texte statique + les valeurs des élement entre crochet, si leur valeur est différent de null.

Si une bonne ame peut me conseiller ca serait trés cool.
Merci d'avance.