Bonjour tous
J'ai un problème délicat avec une expression rationnelle (et non régulière comme certains disent) en JavaScript.
Comme on dit, un petit scrpit vaut mieux qu'un long discours :
<script language="JavaScript">
var chaine = "oui? bien.";
var reg = new RegExp("oui?","gi" );
document.write(chaine.replace(reg,"non!" ));
</script> |
A la 4eme ligne, le ? du motif est interprété comme définissant le caractère optionnel de la lettre précédente, i. Or je souhaite qu'il n'en soit rien, et qu'il soit consideré comme un caractère normal à remplacer. Je pense qu'il faille l'echapper, mais je n'ai pas trouvé comment (/ est sans effet).
Certes dans cet exemple, on peut contourner le problème en n'utilisant pas d'expression rationnelle, mais il s'agit en réalité d'un vrai-faux exemple, j'ai juste besoin de savoir comment utiliser ? dans le motif d'une expression rationnelle en tant que caractère de texte.
Merci