我需要一个正则表达式来从此字符串中获取MyName(MyName可能包含除“之外的任何字符):
lablabla name="MyName" user="MyUser" lablabla
我用过:
boost::regex reg(".*name=\"(?<action>.*)\"\\s.*", boost::regex::perl);
但它返回:
MyName" user="MyUser
答案 0 :(得分:3)
怎么样:
boost::regex reg(".*name=\"(?<action>.*?)\"\\s.*", boost::regex::perl);
这使得它不合适;或者:
boost::regex reg(".*name=\"(?<action>[^\"]*)\"\\s.*", boost::regex::perl);
明确指定该操作不能包含双引号。