您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
C++ 标准库中的
[a-z]
匹配小写字母,[0-9]
匹配数字。.
匹配任意字符(除换行符),*
表示前面的字符或子表达式可以重复零次或多次。\
表示的字符,例如 \d
匹配数字,\w
匹配单词字符。()
将子表达式分组,|
表示选择,例如 (abc|def)
匹配 “abc” 或 “def”。?
表示前面的子表达式可以出现零次或一次,+
表示可以出现一次或多次。^
表示字符串开始,$
表示字符串结束。#include<iostream>
#include<regex>
#include<string>
int main() {
std::string input = "The quick brown fox jumps over the lazy dog";
std::regex pattern("the (\\w+)"); // 匹配 "the" 后跟一个单词
// 使用 regex_search 搜索匹配项
std::smatch match;
if (std::regex_search(input, match, pattern)) {
std::cout << "Match found: "<< match.str()<< std::endl;
std::cout << "Captured word: "<< match[1].str()<< std::endl;
} else {
std::cout << "No match found"<< std::endl;
}
// 使用 regex_replace 替换匹配项
std::string replaced = std::regex_replace(input, pattern, "a $1");
std::cout << "Replaced: "<< replaced<< std::endl;
return 0;
}
在这个示例中,我们首先创建了一个正则表达式模式 the (\\w+)
,用于匹配以 “the” 开头的短语。然后,我们使用 std::regex_search
函数在输入字符串中查找匹配项,并使用 std::regex_replace
函数替换匹配项。
注意,由于 C++ 中的字符串字面量使用双引号,因此需要使用两个反斜杠 \\
来表示一个反斜杠。在正则表达式中,反斜杠用于转义特殊字符,因此需要使用两个反斜杠来表示一个字面量反斜杠。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。