正则表达式cookie值

时间:2014-09-02 08:00:14

标签: regex arr

我需要提取cookie值并在出站重写规则中将其用作后向引用。如果Set-Cookie标头不包含此cookie,则后引用应为空。

所以我创造了条件并坚持创建正确的正则表达式。 正则表达式应匹配每个输入。返回名为locale的字符串

的cookie的引用值
  • somecookie=somevalue;locale=en-US;expires=-1
  • locale=en-US
  • somecookie=somevalue;locale=en-US
  • locale=en-US;expires=-1

应为en-US。对于字符串

  • somecookie=somevalue;local=en-US;expires=-1
  • ;expires=-1
  • '' 后面的参考值应该是``。

有关此类正则表达式的任何想法吗?

2 个答案:

答案 0 :(得分:0)

此正则表达式可选地匹配语言环境值:

.*locale=([^;\s]+).*|.+

后方参考组1。

See live demo与您的示例正确匹配。

这可以通过使用替换来匹配locale 匹配任何东西,知道交替匹配是从左到右,即首先尝试左侧,如果它不匹配然后是正确的尝试。

答案 1 :(得分:0)

(?=.*?locale)locale=(.*?);.*$|(?!.*?locale).*=().*$

你可以使用它。

See demo