2010-09-18 3 views
0

J'ai besoin d'aide pour écrire une regex simple pour RewriteRule pour mod_rewrite dans htaccess. Alors, voici ce que je suis en train d'accomplir:Aidez-moi à écrire une RegeRegule Regex pour htaccess

books/2010-the-world-by-hopkins-139_PPS-1234567 

devrait aller à

index.php?pagename=mypage&PPS=1234567&description=2010-the-world-by-hopkins-139 

Ainsi, pseducode, l'expression rationnelle doit diviser la partie après books par _ et je devrais le faire entrer dans deux parties:

  1. PPS (c'est toujours un chiffre avec 1+ nombre de chiffres variable). C'est la partie après _PPS-
  2. Description (c'est toujours une chaîne). C'est la partie contenant N'IMPORTE QUOI devant le _.

Je suppose que le RewriteRule sera quelque chose comme:

RewriteRule books/(.*)_(.*) index.php?pagename=mypage&PPS=$2&description=$1 

Mais j'ai besoin regex correcte. Plese aide.

Répondre

1

quelque chose comme: mais retournez le 1 $ et 2 $;)

^books/(.*)_PPS-([0-9]{1,})$ 
+0

Merci, il a bien fonctionné. – WhatIsOpenID

+0

s'il vous plaît gardez à l'esprit que vous mélanger VALIDATION de l'URL donnée avec RÉÉCRITURE l'URL en même temps, en particulier dans le deuxième groupe de la Regex. Envisagez de le séparer et de toujours valider à nouveau les chaînes de requête dans index.php. –

Questions connexes