仅从URL中提取密钥

时间:2015-10-19 10:38:37

标签: c++ regex

我正在接收url(我使用的是c ++,而不是c ++ 11,也不能使用boost)

fbconnect://success?request=1658882854368553&to%5B0%5D=10207704056262807

其中键可以不是request(例如error_code)。 我只需要提取密钥,如何使用正则表达式做到这一点? 目前我首先按?而不是&而不是=进行拆分,但我想知道是否有更短的方法来实现这一目标?

1 个答案:

答案 0 :(得分:1)

正则表达式将捕获所有查询字符串字段名称:

[\?&]([^=]+)=

这可能比

  

此刻我先拆分?而不是&而不是=

但请考虑哪个更具可读性。通常可读性比代码长度更重要。此外,如果您不需要其他任何东西,那么包含正则表达式引擎可能会有点过分。