C++下写IP获取的正则表达式
时间: 2023-10-12 13:47:40 浏览: 118
IP地址的正则表达式
5星 · 资源好评率100%
在 C++ 中,可以使用正则表达式库 `std::regex` 来匹配和提取 IP 地址。下面是一个示例代码,展示如何使用正则表达式从文本中提取 IP 地址:
```cpp
#include <iostream>
#include <regex>
#include <string>
int main() {
std::string text = "This is an example text with IP addresses: 192.168.0.1 and 10.0.0.1.";
std::regex ipRegex(R"((\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}))");
std::smatch match;
while (std::regex_search(text, match, ipRegex)) {
std::cout << "Found IP: " << match.str() << std::endl;
text = match.suffix();
}
return 0;
}
```
在上述示例中,我们定义了一个字符串 `text`,其中包含了一些 IP 地址。使用 `std::regex` 定义了一个正则表达式 `ipRegex`,用来匹配 IP 地址的模式。然后使用 `std::regex_search` 函数进行匹配,将匹配到的 IP 地址打印输出。
该示例中的正则表达式 `(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})` 可以匹配标准的 IPv4 地址格式,其中 `\d` 表示数字字符,`{1,3}` 表示该数字字符可以重复出现 1 到 3 次,`\.` 表示匹配点号。
请注意,上述示例仅仅是提取 IP 地址的一个简单示例,实际中可能需要根据具体的需求进行适当的调整。
希望对你有所帮助!如有其他问题,请随时提问。
阅读全文