Bonjour à tous.
Dans un script Javascript, je dois savoir si une chaine de caractère se trouve dans une String, soit au début de la ligne, soit après un espace.
Par exemple, si je recherche gogo dans les strings suivantes avec l'expression régulière, je dois avoir comme résultat :
- Pour "gogoys aihs odhpd" --> TRUE : gogo est en début de ligne
- Pour "oid ohoh gogozoid pjdjd" --> TRUE : gogo est précédé d'un espace
- Pour "oihdhdgogooihsh" --> FALSE : gogo n'est pas en début de ligne et n'est pas précédé d'un espace.
Alors, pour le moment, je fais à chaque fois un if avec deux expressions régulières distinctes :
reg1 me sert à trouver si gogo est en début de ligne et reg2 sert à me dire si gogo est précédé d'un espace.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 var reg1=new RegExp("^"+"gogo"+".*$","i"); var reg2=new RegExp(" "+"gogo"+".*$","i");
Je souhaite maintenant factoriser reg1 et reg2. Sans succès.
Je pensais faire
avec [ ^] pour : soit un espace, soit un début de ligne, mais le '^' n'a pas le même sens quand il est entre croché. Donc comment dire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part var reg=new RegExp("[ ^]"+"gogo"+".*$","i");
qu'il commence par un espace ou qu'il se trouve en début de ligne?
Merci beaucoup d'avance.
SkyBioSS
Partager