accès aux groupes de discussion, consultation et publication d'articles, recherche de "newsgroups"...
membres, identifiez-vous
é-mail Mot de passe
nouveau ? mot de passe oublié ?
Chargement... Chargement en cours...

Groupes français belges canadiens suisses internationaux Nétiquette
Échangez opinions et commentaires dans les forums de discussion.

Re: [HS] Expression reguliere

 [  Nouvelle Discussion Nouvelle discussion  |  Répondre au groupe Répondre au groupe  |  fr.comp.lang.javascript ] 

Retour : Accueil du site fr comp lang javascript   charte stats de ce groupe


  Sujet:   Re: [HS] Expression reguliere  
 De: om+n...@miakinen.net (Olivier Miakinen)
 Groupes: fr.comp.lang.javascript
 Organisation: Neottia nidus-avis
 Date: 13. Jul 2008, 20:23:34
 References: 1 2
Le 13/07/2008 17:49, SAM a écrit :
>  >
>  > sujet.replace('/(?<=[[,])(null,)*null[],]/',
>  >   function(match) {
>  >     count = strlen(match)/5;
>  >     last = match.substring(strlen(match)-1);
>  >     return '#' + count + last;
>  >   });
>  >
>  > (non testé)
> 
> à mon idée ce devrait être plus proche de :
> 
> function dorepnull(sujet) {
> sujet = sujet.replace(/(?<=[[,])(null,)*null[],]/,
>    function(match) {
>      return '#' + match.length/5 + match.substring(match.length-1);
>    });
> return sujet;
> }
> alert(dorepnull($b));

Oui, tu as bien raison, même s'il restait encore au moins un PHP-isme.

> Bon ... ça marche pô :-(
> 
> Erreur : invalid quantifier ?<=[[,])(null,)*null[],]
> Code Source :
> sujet = sujet.replace(/(?<=[[,])(null,)*null[],]/,

Rhazut, je pensais pourtant que les assertions arrières faisaient partie
du tronc commun Perl/PCRE. Autre problème, il ne comprend pas non plus
[],] alors que [\],] marche bien.

Bref, j'ai testé ceci, et ça marche :

------------------------------------------------------------------------
function dorepnull(sujet) {
return sujet.replace(/[[,](null,)*null[\],]/g,
   function(match) {
     return match.substring(0,1) + '#' + (match.length-1)/5
            + match.substring(match.length-1);
   });
}
------------------------------------------------------------------------
sujet = '[null,null,null,null,null]';
alert(sujet + "\n" + dorepnull(sujet));
sujet = '[a,null,b,null,null,c,null,d]';
alert(sujet + "\n" + dorepnull(sujet));
sujet = '[nullard,annulle,null,tronull,"null",null,nul]';
alert(sujet + "\n" + dorepnull(sujet));
------------------------------------------------------------------------


DateSujet  Auteur
01.01.
o 
Groups Explorer contact votre avis comment ça marche? rechercher un groupe suggérer un groupe abuse accueil du site   Imprimer cette page   Envoyer cette page à un(e) ami(e)
Usenet Gratuit