Au fait, si quelqu'un veut m'aider ?
Je n'ai pas réussi à faire correctement cette expression rationnelle :
preg_match('/^Set-Cookie:\s([^;]+).(?:;\sexpires=([^;])).*$/i', $headline, $matches)
Ce que je cherche, c'est à stocker la valeur du cookie ($headline est une ligne d'en-tête renvoyée par le serveur) mais également la date d'expiration seulement si on la trouve : expires=…
À cause du comportement glouton de .* que je n'ai pas réussi à minimiser correctement, je n'arrive pas à faire ça. Du coup, l'expression rationnelle qui est ici suppose que tout set-cookie renvoyé contiendra expires=… ce qui n'est pas la norme.
Bref, à vot' bon cœur, parce que moi j'ai abandonné.
*Indice : je pense qu'il faut utiliser des alternatives, mais je n'ai pas trouvé comment.
exemple de ligne : "Set-Cookie: SESS1121212121=454545454545; path=/; expires=Fri, 14 august 2015 GMT; domain=.mediapart.fr\r\n"
Oh la vache, c'est bien plus complexe que j'imaginais les RegEx dans Notepad++
J'utilise énormément ces expressions (en faisant en plusieurs étapes ou en retravaillant un peu à la mano) et le petit ensemble que je connais (les éléments de base) me permettent de couvrir 99% de mes besoins.
Je viens de tomber sur un cas un peu retord (parce qu'il prend en compte des sauts de ligne) et finalement j'ai trouvé dans cette doc bien faite, mais épaisse.
Encore une fois : merci Notepad++
Oh my god !!
Je me suis creusé la tête pour comprendre l'explication. Mais c'est magnifique. Tester si un nombre est premier avec une regex. Je ne savais pas que ça pouvait être aussi puissant.