Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1433 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Expressions rationnelles et caractère "?"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Expressions rationnelles et caractère "?"

n°782682
Erkethan
Posté le 30-06-2004 à 17:04:56  profilanswer
 

Bonjour tous  :hello:
 
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  :)

mood
Publicité
Posté le 30-06-2004 à 17:04:56  profilanswer
 

n°782846
Flyman30
Posté le 30-06-2004 à 19:58:46  profilanswer
 

http://www.asp-php.net/tutorial/scripting/regexp.php
 
PS: RegEX = regular expression donc expression régulière  ;)


Message édité par Flyman30 le 30-06-2004 à 20:00:17
n°782946
gm_superst​ar
Appelez-moi Super
Posté le 30-06-2004 à 22:06:41  profilanswer
 

Erkethan a écrit :

J'ai un problème délicat avec une expression rationnelle (et non régulière comme certains disent)


Dans ce cas, pourquoi tu as appelé ta variable "reg" :o
 
Sinon pour échapper c'est \


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°782980
Erkethan
Posté le 30-06-2004 à 22:32:54  profilanswer
 

http://developpeur.journaldunet.co [...] xp1a.shtml  :hello:  
 

gm_superstar a écrit :

Dans ce cas, pourquoi tu as appelé ta variable "reg" :o
 
Sinon pour échapper c'est \

RegExp pour Regular Expression.  :ange:  
 
 
Sinon, j'avais déja essayé \, ca ne marche pas, et donne le même résultat.


Message édité par Erkethan le 30-06-2004 à 22:34:46
n°782986
gm_superst​ar
Appelez-moi Super
Posté le 30-06-2004 à 22:38:08  profilanswer
 

Je maintiens que c'est \ pour échapper un caractère spécial...
 
Mais en JS mieux vaut déclarer une regexp comme ça :
 
re = /oui\?/gi;
 
Il y a beaucoup moins de soucis qu'avec RegExp()
 
 
http://devedge.netscape.com/librar [...] ml#1010922


Message édité par gm_superstar le 30-06-2004 à 22:41:28

---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°783009
Erkethan
Posté le 30-06-2004 à 23:03:34  profilanswer
 

C'est bon, j'ai trouvé :)
 
Il fallait échapper l'échapement :p
 

new RegExp("oui\\?","gi" );


Et ? est pris comme un caractère normal.
 
 
J'ai pas essayé l'autre déclaration, je la trouve moins .. conforme aux syntaxe que je vois d'habitude  :pt1cable:

n°783036
gm_superst​ar
Appelez-moi Super
Posté le 30-06-2004 à 23:38:57  profilanswer
 

Erkethan a écrit :

J'ai pas essayé l'autre déclaration, je la trouve moins .. conforme aux syntaxe que je vois d'habitude  :pt1cable:


C'est pourtant la notation usuelle... Celle qu'on trouve dans les scripts shells, perl, etc...


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Expressions rationnelles et caractère "?"

 

Sujets relatifs
eliminer un caractère d'une chaineScinder une chaîne de caractère en 4 parties
caractère ' qui ne veut pas s'afficher ds 1 livre d'or ?Recuperer une chaine de caractere venant d'un script PHP
Egalité chaine de caractère / nombre 0[LISP] j arrive pas a tranformer un résultat en chaine de caractère
[PHP] accents inclus ou non dans les expressions rationelles [a-z]remettre une chaine de caractere à vide???
conversion chaine de caractere / en numeriquemettre la chaine de caractère comme il faut
Plus de sujets relatifs à : Expressions rationnelles et caractère "?"


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR