Bonsoir !

Je suis sur une regex qui me casse la cabeza... Je suis pas un pro des expressions régulières, mais j'arrive toujours à m'en sortir et finalement à trouver.

Hors, celà fait 2 jours que je pense qu'à celle là, et là ca devient trop obsessionnelle, donc j'ai besoin d'aide ^^.

Voici un panel d'exemple de string cible :

<a href="http://www.lebon.com/test/de/accueil/index.html>
<a href="http://www.lebon.com/fr/accueil/index.html>
<a href="http://www.lebon.com/accueil/index.html>
<a href="test/it/accueil/index.html>
<a href="jessaye/nimportequoi/test/pt/accueil/patati/patata/kaisoif.html>
<a href="images/accueil/index.html>
<a href="http://www.lemauvais.com/test/de/accueil/index.html>

J'aimerais donc modifier le mot accueil en home. Mais j'ai plusieurs conditions :

- si http dans le href alors que http://www.lebon.com
- accueil est forcément précéde de : /(de?|es?|it?|nl?|pt?|gb?|fr?)/
- si il y a un mot dans le href commencant par imag* je ne prends pas en compte.

Dans mes exemples les n° 1, 2, et 4 sont bons pas les autres.

J'ai commencé par essayer de faire un match et de voir ensuite comment prendre qu'une partie :

<a href="(http://www.lebon.com/?)(.*)/(:?fr?|gb?|de?|es?|it?|nl?|pt?)/accueil/

Mais çà m'a embrouillé plus qu'autre chose et je tourne en rond :s

Si un regex guru passe par là et a du temps ca me ferait bien plaisir ^^


Merci beaucoup !

Yudao.