C++中使用boost正则获取字串准确位置
时间: 2024-11-12 16:46:42 浏览: 7
C语言中的正则表达式使用示例详解
在C++中,Boost库中的Spirit库虽然主要用于解析而非正则表达式操作,但如果你想要查找子字符串在给定字符串中的精确位置,你可以使用标准库中的`std::string::find`函数。这是一个简单的例子:
```cpp
#include <string>
#include <iostream>
int main() {
std::string str = "Hello, world!";
std::string substr = "world";
size_t position = str.find(substr);
if (position != std::string::npos) {
std::cout << "Substring found at position: " << position << "\n";
}
else {
std::cout << "Substring not found.\n";
}
return 0;
}
```
这段代码会在`str`中查找`substr`的位置,如果找到,`find`会返回子字符串的起始索引;如果没有找到,它会返回`std::string::npos`。请注意,这个位置是从0开始计数的。
阅读全文