阅读量:5
在 Linux 下,C++ 可以使用 库来处理正则表达式。 是 C++11 标准库的一部分,因此你需要使用支持 C++11 或更高版本的编译器来编译你的代码。
下面是一个简单的示例,展示了如何在 C++ 中使用正则表达式:
#include
#include
#include
int main() {
std::string text = "Hello, my email is example@example.com and my phone number is 123-456-7890.";
std::regex email_regex(R"((\w+@\w+\.\w+))");
std::regex phone_regex(R"((\d{3}-\d{3}-\d{4}))");
std::smatch matches;
// 查找电子邮件地址
if (std::regex_search(text, matches, email_regex)) {
std::cout << "Found email: " << matches[0] << std::endl;
} else {
std::cout << "Email not found." << std::endl;
}
// 查找电话号码
if (std::regex_search(text, matches, phone_regex)) {
std::cout << "Found phone number: " << matches[0] << std::endl;
} else {
std::cout << "Phone number not found." << std::endl;
}
return 0;
}
在这个示例中,我们使用了两个正则表达式:一个用于匹配电子邮件地址,另一个用于匹配电话号码。std::regex_search 函数用于在文本中查找与正则表达式匹配的子串。如果找到匹配项,它将返回 true,并将匹配项存储在 std::smatch 对象中。
要编译此代码,请确保使用支持 C++11 或更高版本的编译器,并添加 -std=c++11(或更高版本)标志。例如,使用 g++ 编译器:
g++ -std=c++11 main.cpp -o main
然后运行生成的可执行文件:
./main
这将输出:
Found email: example@example.com
Found phone number: 123-456-7890
以上就是关于“Linux下C++如何使用正则表达式”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm