[英]Regular Expressions in C++ using Boost
到目前为止..我有这个测试字符串:
Hello {John|Paul|Cindy}, hows {david}?
我的表达是:
(\{\w+\})
但是,它只返回大卫。 我希望能够抓住John,Paul和Cindy。 只有0或2个垂直条。 有任何想法吗?
谢谢
如果不是某种竞争,我会简单地使用两个正则表达式:
{[\\w|]+}
抓住每对花括号及其内容,然后,在每个结果上, \\w+
提取单词。
只使用一个正则表达式,你不能简单。
如果只有0或2个垂直条:
(\{\w+\}|\{\w+\|\w+\|\w+\})
0或更多:
(\{\w+(\|\w+)*\})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.