带有Boost :: Regex的WhiteSpace

时间:2014-08-13 18:31:34

标签: c++ regex boost boost-regex

我需要使用Boost:regex搜索来搜索带有空格的字符串,但它永远不匹配。

我需要从工作邮件中获取用户名(下面输入中的第二个匹配),但订单可以更改,因此我需要扫描整个字符串。

输入:

homemail:mail:username@mail.com workmail:mail:username@mail.com

正则表达式:

workmail: mail:\s*([^@>;]*)

在pcre中它可以正常工作:http://regex101.com/r/uD4pH7/1

在Boost中,我尝试了很多方法:

workmail: mail:\s*([^@>;]*)

workmail:\\smail:\s*([^@>;]*)

workmail:\\x20mail:\s*([^@>;]*)

\\Qworkmail: mail:\\E\s*([^@>;]*)

workmail:[[:space:]]mail:\s*([^@>;]*)

workmail:[[:s:]]mail:\s*([^@>;]*)

我的boost lib版本是在Debian 6系统中通过apt安装的1.42.0。 我正在使用boost :: regex_search函数。

0 个答案:

没有答案