Regex boost library comparing
Regex boost library comparing
int array[328];
string array2[328];
int array3[328]; //counter array
int value=0;
std::string text("((1 0) (25 5) (27 2) )((25 5) (27 2) (31 2) )");
boost::regex regex("(\d)+[^\d+\)]"); // [^\d+] ");
boost::sregex_token_iterator iter(text.begin(), text.end(), regex, 0);
boost::sregex_token_iterator end;
for( ; iter != end; ++iter )
{
std::cout<<*iter<<"n";
for(int b=0; b<328; b++)
{
if(*iter == "1")
{
cout << "yesn";
array3[b] = array3[b]+ count;
break;
}
}
}
return 0;}
我们正在使用boost库来生成正则表达式,以查看1、25、27和31出现的次数,换句话说,就是括号后面的第一个数字。然而,我们试图使用一个数字介于1-28之间的数组来比较它,但我们不知道要比较的iter类型是否有意义。
您的代码和正则表达式在许多方面都存在严重的畸形。但除此之外,您遇到的基本问题是,给定您的正则表达式是如何形成的,匹配将导致string::const_iterator
s的pair
,分别指向匹配的开始和结束。
把你的代码改成:
for(int b=0; b<328; b++)
{
if(*iter == "1 ")
{
cout << "yesn";
array3[b] = array3[b]+ count;
break;
}
}
}
…它会成功的
相关文章:
- Boost Graph Library,修复节点大小
- SFML library: http request
- 解决"ld: library not found for -ltensorflow_framework.2.3.0"
- Linking library C++
- 在VS2019项目中集成ImageMagick:x64-windows-static library
- OpenSSL fips in C++ wrapper Library 如何?错误:指纹不匹配
- C++ class vs a library
- C++ library with Tensorflow on Android
- CMake:尝试在 Jenkins 构建机器上运行时出现"Linked Library"错误 (0xc0000135)
- 将 c++ cmake-library 构建发布到本地存储库时出现 Gradle 错误
- 为什么'allocate in one library and free in the other'是错误的
- 链接 library.lib 使用 setup.py.
- 目标提升::<library>已经有导入的位置 + 链接错误
- Visual Studio 2017 C++,如何定义一个"环境变量"'Additional Library Directory'?
- C++ Boost SML Library
- Windows 套接字和身份验证构建在包含 Poco-Library 时失败
- Qt小部件应用程序"Library not registered"错误
- Xcode/IOS: linking a CMake library
- 如何修复'The procedure entry point SDL_RWclose could not be located in the dynamic link library'
- Regex boost library comparing