Négation dans une expression régulière, comment faire

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

bucheron
WRInaute discret
WRInaute discret
 
Messages: 130
Inscription: 16 Juin 2006

Négation dans une expression régulière, comment faire

Message le Mar Juin 10, 2008 18:34

Bonjour,

je souhaiterais savoir si il est possible de réaliser la négation avec les expression régulière, afin d'écrire une règle pour mon htaccess

Ex: je rewrite l'url si il n'y a pas .html à la fin:

une règle du genre (qui ne marche pas bien sur)
Code: Tout sélectionner
toto/(.*[^(.html)])


une idée ???

D'avance merci

PS: En fait c'est une question d'ordre générique sur les Expr Reg et non destiné uniquement à l'URL Rewriting

Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Mar Juin 10, 2008 19:40

Je commencerai par essayer :

Code: Tout sélectionner
RewriteCond %{REQUEST_URI} !\.html
RewriteRule (.*) $1.html [R=301]

bucheron
WRInaute discret
WRInaute discret
 
Messages: 130
Inscription: 16 Juin 2006

Message le Mar Juin 10, 2008 20:02

en effet cela fonctionne mais il me faudrait une facon plus générique car je souhaiterais l'utiliser dans un pattern pour les fonctions php genre eregi, ... De plus la négation ne devant pas forcément se trouver à la fin et il peut y en avoir plusieurs.

[^abc] cela permet d'eviter les caracteres mais n'y a t il pas un moyen d'échapper une chaine entière ?

jeroen
WRInaute passionné
WRInaute passionné
 
Messages: 2461
Inscription: 30 Aoû 2002

Message le Mar Juin 10, 2008 23:01

tu as essayé ^(abc) ?

bucheron
WRInaute discret
WRInaute discret
 
Messages: 130
Inscription: 16 Juin 2006

Message le Mer Juin 11, 2008 5:50

nop ça ne marche pas car cela signifie que la chaine doit commencer par (abc) et non qu'elle ne doit pas contenir abc

Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Mer Juin 11, 2008 8:44

Avec mod_rewrite tu ne peux avoir de négation qu'au début de l'expression régulière.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités