Les expressions régulières en ASP??

Les expressions régulières en ASP?? - Programmation

Marsh Posté le 11-06-2001 à 12:36:34    

comment peut-on traiter les expressions régulières en ASP vbscript ou javascript et peut on vraiment les traités?
 
sinon quel est la solution
 
merci

Reply

Marsh Posté le 11-06-2001 à 12:36:34   

Reply

Marsh Posté le 11-06-2001 à 13:08:58    

en vbscript je crois qu'il existe l'object regexp  
lmais si quelqu'un a compris sonutilistation ca m'aiderai bcp  
 
merci

Reply

Marsh Posté le 11-06-2001 à 13:33:50    

personne n'a déja utilisé REGEXP????? SVP

Reply

Marsh Posté le 12-06-2001 à 09:42:53    

voci un exemple de ce que j'ai fait recement...
je recupere le chiffre dans un nom de varaible NOMX (NOM3 par exemple) et je le transforme en Valx+1 (val4 par exemple):
 
'tranformation des NOMX en VALX+1, si NomX existe
'gération du profil, je cherche les numero de [0-12]
Profil="\6|3|2|1|0|7|8|9|10|11|12|4|5|\ "  
'nouvel objet expresseion reguliere    
 Set regEx = New RegExp        
 regEx.Pattern = profil      
 regEx.IgnoreCase = True        
 regEx.Global = True  
 'execute la recherche      
 Set Matches = regEx.Execute(strval)    
 'on recherhce toutes les occurences (mais ne peut y en avoir qu'une!)
For each Match in Matches
occurence=Match.value
Next
ModifNOMX = occurence
 
JE pense qu'apres tu pourras chercher avec le nom des methodes utilisé...
Si non en javscript je connais plus.........
@+

Reply

Marsh Posté le 12-06-2001 à 09:55:01    

grosmethos a écrit a écrit :

 
gération du profil, je cherche les numero de [0-12]
Profil="\6|3|2|1|0|7|8|9|10|11|12|4|5|\ "  




 
Je trouve que ton profil n'est pas très bien écrit, enfin je ne sais pas peut-être qu'en ASP c'est limité. Je te propose plutôt un profil comme celui-ci :
 
Profil="/^([0-9]|1[0-2])$/"
 
Vous n'utilisez pas les Méta-caractères de fin ($) et de début de ligne (^) en ASP ??
 
Qu'est-ce que tu en penses ?

Reply

Marsh Posté le 12-06-2001 à 10:08:00    

merci
 
mais mon pb aussi c'est que quand je déclare  
 
regex= new RegExp ca marche pas ca me marque syntaxe incorrect

Reply

Marsh Posté le 12-06-2001 à 10:17:40    

Je dis peut-être une bétise (je connais vraiment pas bien l'ASP) mais, la syntaxe que tu utilises c'est pas du VBscript, c'est Javascript NON ?
 
Si j'ai souvenir, il faut lui déclarer le langage utilisé. Tu l'as bien déclaré ???
 
J'espère que j'ai pas dis trop une trop grosse connerie...

Reply

Marsh Posté le 12-06-2001 à 10:24:14    

j'ai oublié de mettre le set
 
set RegEx= new RegExp  
 
j'ai pris ca du site
http://www.microsoft.com/france/sc [...] TOCAlt.htm

Reply

Marsh Posté le 12-06-2001 à 10:24:39    

mais ca marche pas :(

Reply

Marsh Posté le 12-06-2001 à 10:34:06    

Citation :

Je dis peut-être une bétise (je connais vraiment pas bien l'ASP) mais, la syntaxe que tu utilises c'est pas du VBscript, c'est Javascript NON ?
 
Si j'ai souvenir, il faut lui déclarer le langage utilisé. Tu l'as bien déclaré ???
 
J'espère que j'ai pas dis trop une trop grosse connerie...


 
NANA raison à 200%! ;)
 
Un petit tomik ASp ca vous branche?

Reply

Marsh Posté le 12-06-2001 à 10:34:06   

Reply

Marsh Posté le 12-06-2001 à 10:36:10    

Bha oui, voilà j'ai dis une grosse connerie, c'était du VBscript !!!
 
T'as essayé en Jscript ??
 
Il donne aussi des exemples dans le MSDN...

Reply

Marsh Posté le 12-06-2001 à 10:36:12    

<%@LANGUAGE="VBSCRIPT"%>
DA!
ou
<%@LANGUAGE="JSCRIPT"%>
da!:d

 

[edit]--Message édité par dalida--[/edit]

Reply

Marsh Posté le 12-06-2001 à 10:37:53    

Citation :

Si j'ai souvenir, il faut lui déclarer le langage utilisé. Tu l'as bien déclaré ???


parlais de ca!

Reply

Marsh Posté le 12-06-2001 à 10:39:35    

bin en javascript came parraissai plus compliqué et comme je suis en vb pratiquement tt le temps je me suis dis que j'allais le faire en vb
 
mais si vous savez comment on le fais en javascript je suis preneur
 
si vous avez des codes qui marches e que vous pouvez me montrer ou m'envoyer ca m'aiderais bcp ;)

Reply

Marsh Posté le 12-06-2001 à 10:42:10    

vi dalida tt ce que tu me dis j'ai fais déja,
 
en faite je réalise un forum , un peu comme celui que nous utilsons en ce moment , je l'ai déja bien amoché mais je rencontre quelques difficultés comme celle présente en ce moment

Reply

Marsh Posté le 12-06-2001 à 11:19:47    

Voilà un petit exemple en Javascript (en Jscript ça doit aussi fonctionner...) :
 
<script language="Javascript">
texte = new String (":lurl:http://www.tonadresse.com:\lurl:" );
p = /(:lurl:)(.*)(:lurl:)/
resultat = texte.match(p);
document.write("Expression : <a href=\"" + resultat[2] + "\">" + resultat[2] + "</a>" );
</script>
 
A oui, j'ai remplacer :url: par :lurl: car url doit être un terme réservé.
 
@+

Reply

Marsh Posté le 12-06-2001 à 11:21:10    

je te remercie bcp fly  
j'essaye et je te tiens au courant

Reply

Marsh Posté le 12-06-2001 à 11:41:35    

bon c'est pt moi qui par en vrille ou qui suis lourd mais ca marche pas
 
fly le dernier document.write n'affiche rien
 
j'ai essayé d'afficher que resultat[2] ca marche pas non plus  :(  
 
on dirai que l'expression régulière ds p ne marche pas ou alors y a un  pb de suyntaxe ou de reconnaissance

Reply

Marsh Posté le 12-06-2001 à 11:43:00    

Mon morceau de code en Vbscript ( et c'est bien du vbscript) marche tres bien chez moi!!
Il est vrai que mon profil et pas top, mais je me suis plus orienté sur les mise en place de l'expressions reguliere que sur le profil...
Il est evident que l'on peut optimiser....
 
SI tu as bien declarer ton language de script y a pas de raison que ça marche...
Tu auras le même proble en Jscript, car c'est la même chose juste la syntaxe que change!!

Reply

Marsh Posté le 12-06-2001 à 11:48:38    

saxgard a écrit a écrit :

bon c'est pt moi qui par en vrille ou qui suis lourd mais ca marche pas
 
fly le dernier document.write n'affiche rien
 
j'ai essayé d'afficher que resultat[2] ca marche pas non plus  :(  
 
on dirai que l'expression régulière ds p ne marche pas ou alors y a un  pb de suyntaxe ou de reconnaissance




 
Ouaouh !!! Bha là, j'sais pas, l'exemple fonctionne pourtant...

Reply

Marsh Posté le 12-06-2001 à 12:35:57    

bon bin je vous remercie , je vais ssayé de voir ec qui cloche :(
 
c'est sympas de votre part de vous etes attarder sur mon pb
@++
 
NB: si vous avez des remarques balancez tjrs n'hesitez pas ;)

Reply

Marsh Posté le 12-06-2001 à 13:20:27    

fly LM a écrit a écrit :

Voilà un petit exemple en Javascript (en Jscript ça doit aussi fonctionner...) :
 
<script language="Javascript">
texte = new String (":lurl:http://www.tonadresse.com:\lurl:" );
p = /(:lurl:)(.*)(:lurl:)/
resultat = texte.match(p);
document.write("Expression : <a href=\"" + resultat[2] + "\">" + resultat[2] + "</a>" );
</script>
 




 
 
fly pour ton exemple , ca me marque l'erreur suivante : resultat.2 n'est pas un objet
 
j'ai essayé de declaré rsultat en array marche pas
et en String marche pas non plus :(
please HELP ME  :cry:  
 
<SCRIPT LANGUAGE="JavaScript">
texte = new String(":lurl:http://www.tonadresse.com:\lurl:" );
resultat = new  Array;
var dimension=resultat.length;
document.write(dimension); <----la ca passe
p = "/( :lurl: )(.*)( :lurl: )/";
resultat = texte.match(p);
dimension=resultat.length; <---- la ca passe plus
document.write("Expression : <a href=\"" + resultat[2] + "\">" + resultat[2] + "</a>" );
</Script>
 
et le pb est le meme si je déclare résultat en string

Reply

Marsh Posté le 12-06-2001 à 13:21:36    

tiens un version jscript :
 
/* si la saisie contient un élmment séparateur .,-_/\ */
   //generation du profil
 profil = /\.|,|\/|-|:|_|\\| /
//recherche  d'une occurence dans la chaine date
 resultat = valdate.search(profil);
   
   if (resultat>0)
   {
      //recuperation de l'occurence
      delimiteur=valdate.match(profil);
 
Donc je cherche dans ma variable texte:valdate si j'ai un / ou un . ou un espace etc etc...
Si resultat est positif alors je recupere l'ocurence et je lui affecte delimiteur comme nom.
donc si mon valdate est de type 12/12/2001 alors delimiteur contient /
si valdate c'est 12.12.2001 alors delimiteur contient .
 
Voila à toi d'adapter ton code ......
@+

Reply

Marsh Posté le 12-06-2001 à 13:23:28    

gromethos je vais avoir le meme pb la , voir si dessus :(

Reply

Marsh Posté le 12-06-2001 à 13:28:16    

rectification par desespoire j'ai aussi essayé
 
p = "/( :lurl: )(.*)( :lurl: )/";
et
p = /( :lurl: )(.*)( :lurl: )/;
 
mais ca change rien

Reply

Marsh Posté le 12-06-2001 à 15:48:01    

grosmethos si je met
 
<% @ LANGUAGE="VBScript" lcid="1036" %>
<%
   'tranformation des NOMX en VALX+1, si NomX existe
   'gération du profil, je cherche les numero de [0-12]
   strval=":lurl:http://www.adresse.com:\lurl:"
   Profil="/(:lurl:)(.*)(:\lurl:)/"
   'nouvel objet expresseion reguliere  
   Set regEx = new RegExp
   regEx.Pattern = profil
   regEx.IgnoreCase = True
   regEx.Global=True
   'execute la recherche
   Set Matches = regEx.Execute(strval)
   'on recherhce toutes les occurences (mais ne peut y en avoir  qu'une!)
   For each Match in Matches
 occurence=Match.value
   Next
   ModifNOMX = occurence
 
%>
 
il me dis
 
Microsoft VBScript compilation error '800a03ea'  
 
Syntax error  
 
/CRT/Analytique/test.asp, line 19  
 
Set regEx = new RegExp
 
 
dc sans rentrer ds les détail du profile ou autre qui mon été donné par fly ds un exemple en javascript.
J'aimerais vraiment savoir pourquoi il ne connait pas la déclaration de regexp
 
Grace a fly j'ai bien une solution en javascript mais je ne sais pas comment m'en servir en asp pour que je puisse m'en servir coté serveur , étant donné que j'ai déja déclaré  
 
<% @ LANGUAGE="VBScript%>
 
je ne peut pas  mettre ds la meme page  
<% @ LANGUAGE="JavaScript%>
 
et la mettre sous forme  
<SCRIPT LANGUAGE="JavaScript">
code....
</SCRIPT>
ce qiui ici serai au niveau du cleint non??? a moin que je dises des conneries!!!!

Reply

Marsh Posté le 12-06-2001 à 15:57:09    

En fait il faut adapter le code:
ModifNOMX = occurence  ModifNomx c'est le nom de ma fonction donc tu dois enlever ce truc, fait un response.write("occurence"&occurence) à la place, la tu vera si tu as trouver quelque chose dans l'expression reguliere;
 
PAr contre il faut bien que tu fasses la difference entre un script cote client et cote serveur.
Soit tu fait la recherche sur le poste client avec ton expression reguliere, soit le serveur avec <%%>
Sur le client si tu bosses avec IE peut importe utilise soit Javascript soit Vbscript, par contre netscape n'utilise que javascript!
Sur le serveur c'est toi qui choisi en deffinissant le language utilisé...
Tu peux donc inserer sur ta page autant de script client que de script serveur
le cleint en javascript
<script language=JavaSCript>
</script>
pour le serveur :
<%%> suffisent
ou alors
<script language=Vbscript runat server>
</script>
 
Dans le code suivant tu as tout de  melangé du javascript avec le onclick des variables serveur avec les %% et du bon vieux html
<%if (couleur="#ffffe0" ) then%>
<a href="#" onclick="window.open('info.asp?AID=<%=objrs_detail("AID" )%>&NID=<%=objrs_detail("NID" )%>','','toolbar=no, height=200,width=400');">
<img src="loupe.gif" width="35" height="35"  border="0" alt="Information complémentaires">
 </a>  
<%else%>
<a href="#" onclick="window.open('info.asp?AID=<%=objrs_detail("AID" )%>&NID=<%=objrs_detail("NID" )%>','','toolbar=no, height=200,width=400');">
 <img src="louper.gif"  width="35" height="35"  border="0" alt="Information complémentaires">  
 </a>
<%End if%>
Est ce plus clair pour toi ainsi....
 
PAr contre le code que je t'ai passé marche trés bien aussi bien celui en javascript qu'en vbscript!!

Reply

Marsh Posté le 12-06-2001 à 16:05:46    

bon oki merci je vais voir ca , mais je pense que j'auarais encore mon pb sur la declaration de regexp,
 
mais je te tiens au courant  :)

Reply

Marsh Posté le 12-06-2001 à 16:09:15    

par aussi mon pb est que si j'insere le code entre
<%%> il me dis qu'il y a un pb de déclaration , alors que moi je veux le mettre dedans ces balises
 
sinon entre<script ...> et </script> ca  al'air de marcher !!!
 
je sais que je suis lourd mais ca me turlupine vraiment lol

Reply

Marsh Posté le 12-06-2001 à 16:11:24    

car comme on le dis bien tt les 2 <script...> c'est coté client et <% %> c'est coté serveur et moi j'ai besoin de faire mes regexp coté serveur
 
je sais pas si je suis clair ou en faite si c moi qui n'est pas vraiment compris l'asp et les scripts , e qui m'étonnerais pas  lol
 
@+++

Reply

Marsh Posté le 12-06-2001 à 16:18:00    

cote serveur alors c'est <%%>
 
Peut etre faut il prendre le probleme en amont!
Est ce que tes pages asp sont bien interpretées!!
si tu fait un <%response.write("coucou" )%> tu a bien coucou qui s'affiche sur ton ecran...
Si oui dans ce cas c'est vbscript que tu utilises, et ton interpreteur marche correctement...
 
Si tu as le droit, et si c'est pas trop long envoie moi ta page asp par email...
je vais regarder si je trouve quelque chose d'anormale!!

Reply

Marsh Posté le 12-06-2001 à 16:20:05    

merci oki je te l'envoi

Reply

Marsh Posté le 12-06-2001 à 16:42:34    

verifie ton mail
j'ai copier du mauvais code sur le forum, c'est mieux dans le fichier joint du mail...

Reply

Marsh Posté le 13-06-2001 à 09:48:12    

grosmethos je te remercie encore de ton aide , mais j'ai tjrs le meme pb de declaration dur RegExp :(
 
je commence sérieusement a me demander si il n'y  apas un pb au niveau du serveur !! mais bon pt que c aviens d'autre chose , un détail qui nous aurait échappé

Reply

Marsh Posté le 13-06-2001 à 10:36:46    

salut
Bon je viens de regarder à nouveau dans le msdn et j'ai pas d'erreur de plus je viens à nouveau de faire tourner mon code, et j'ai pas d'erreur, il faut donc chercher ailleur...
Comme je te disais par mail, essaye de te mettre dans MES conditions avec un chaine de caracteres differentes et MON profil...
Si dans ce cas ça marche toujours pas, c'est que ça vient d'ailleurs....comme dirait Mulder
Tiens moi au courant...
JE vais essayer un truc chez moi et je t'en parle suivant le resultat!!

Reply

Marsh Posté le 13-06-2001 à 10:43:30    

oki merci bcp

Reply

Marsh Posté le 13-06-2001 à 11:23:44    

as te reçu le mail et si oui sa donne quoi??

Reply

Marsh Posté le 13-06-2001 à 12:36:39    

acmarche pas la je usis entrein d'essayer d'autre piste , je commence vraiment a saturé grave , c'est vraiment de la merde l'ASP on peu le dire lol

Reply

Marsh Posté le 13-06-2001 à 14:04:58    

c'est donc un probleme plus generale...
 
Mais est ce que tu arrives a interpreter du code asp sur tes pages!!!!
un response.wirte("coucou" ) t'affiche t'il coucou!!

Reply

Marsh Posté le 13-06-2001 à 14:08:12    

ui ui ca y a pas de pb , je usi entrein de faire un forum comme celui ci , et je l'ai deja presque fini , dc j'en conclue que l'interprétation des pages asp se passe bien  ;)

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed