regex pour pagination articles

larsulrich
regex pour pagination articles

Bonjour à tous,

voila, je débute en programmation regex sous php, pour creer des routines d'url rewriting, et g kk souçis pour m'en sortir :)

voici mon problème :
je créé un petit programme pour decouper un article en plusieurs pages, et je voudrais écrire un regex qui me permette d'afficher plusieurs types d'url de pages , comme ceci :
http://www.mondomaine.com/actu/2010/03/17/titre_article
http://www.mondomaine.com/actu/2010/03/17/titre_article/1
http://www.mondomaine.com/actu/2010/03/17/titre_article/2

si mon article est découpé en 2 pages.

dans mon lighttpd.conf (je travaille sous lighttpd / linux / php 5.2.6-1), j'ai écrit la regex suivante qui me permet de matcher les 3 url :
"^/(.*\/\d{4}\/\d{2}\/\d{2})/([0-9a-zA-Z-_]+)/?([0-9{0,1})$" => "/index.php?module=$1&opts=$2&pagination=$3"

le pb, c que cette regex ne permet plus d'afficher une url de cette sorte :
http://www.mondomaine.com/actu/insolite (actu et insolite etant des categorie d'articles)

j'ai kan mm trouvé une regex qui me permet de gérer cette derniere url:
"^/(.*)/(.*)?$" => "/index.php?module=$1&opts=$2", mais des que je la rends active, ce sont mes ul paginées qui ne matchent plus...

voila, voila...si une ame charitable pouvait-il m'aider à matcher toutes les url, ce serait trop sympa :)

merci d'avance a tous !

johnstyle
Re: regex pour pagination articles

Il y avait une petite faute ([0-9] mal fermé) :
"^/(.*\/\d{4}\/\d{2}\/\d{2})/([0-9a-zA-Z-_]+)/?([0-9]{0,1})$" => "/index.php?module=$1&opts=$2&pagination=$3"

Ceci-dit essaye cette expression ci :
"^/([^/]+/d{4}/d{2}/d{2})/([^/]+)/?([0-9]+)?$" => "/index.php?module=$1&opts=$2&pagination=$3"