正则表达式问题,关于小括号的。

程序如下:stringstr="玉泉营南300米星海大厦";regexexp("(南\d{1,10}米)");regex_replace(str,exp,"($1)",b... 程序如下:
string str="玉泉营南300米星海大厦";
regex exp("(南\d{1,10}米)");
regex_replace(str,exp,"($1)",boost::match_extra| boost::format_all);
程序的意思是想把="玉泉营南300米星海大厦",替换成="玉泉营(南300米)星海大厦"
但是,没有给“南300米”加上括号。
这个政策替换应该怎么写呢?
展开
 我来答
yeahrahxephon
2011-12-23 · TA获得超过1166个赞
知道小有建树答主
回答量:1192
采纳率:0%
帮助的人:1257万
展开全部
regex_replace(str,exp,"\($1\)",boost::match_extra| boost::format_all);

这样?
追问
regex_replace(str,exp,"\\($1\\)",boost::match_extra| boost::format_all);  
这样就对了!
make_big_money
2011-12-23 · TA获得超过233个赞
知道小有建树答主
回答量:272
采纳率:100%
帮助的人:296万
展开全部
查找
[\(\)()]+
替换成空字符串
更多追问追答
追问
能说详细点吗,不是很明白,谢谢
追答
英文的小夸号在正则表达式中有特殊的意义(取分组),你如果要匹配小夸号这个字符的话,需要转义,也就是\(和\),而(和)是我给你另外加上的,考虑到你有可能能需要匹配中文的小夸号。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaobudian2017
2011-12-25
知道答主
回答量:1
采纳率:0%
帮助的人:1703
展开全部
用替换:“南300米”,替换为“(南300米)”。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式