帮助用C ++的boost ::正则表达式 [英] Help with C++ Boost::regex

查看:105
本文介绍了帮助用C ++的boost ::正则表达式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在C ++使用boost ::正则表达式来得到一个字符串中的所有单词。

I'm trying to get all words inside a string using Boost::regex in C++.

下面是我输入:

你好|网络 - 喇嘛喇嘛HOHO

"Hello there | network - bla bla hoho"

这code:

      regex rgx("[a-z]+",boost::regex::perl|boost::regex::icase);

      regex_search(input, result, rgx);

       for(unsigned int j=0; j<result.size(); ++j)
       {
         cout << result[j] << endl;
       }

我只得到了第一个单词你好..
什么是错我的code? result.size()返回1。

I only get the first word "Hello".. whats wrong with my code ? result.size() returns 1.

感谢您。

推荐答案

regex_search只找到第一个匹配。遍历所有的匹配,采用regex_iterator

regex_search only finds the first match. To iterate over all matches, use regex_iterator

这篇关于帮助用C ++的boost ::正则表达式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆