9.Boost之正则regex

简介:  1正则表达式,案例1(如果使用的boost库是64位的,要把VS设置成支持64位的,这样的化,才可以运行通过) #include <boost/regex.hpp> #include <locale> #include <iostream> #include <string>   usi


1正则表达式,案例1(如果使用的boost库是64位的,要把VS设置成支持64位的,这样的化,才可以运行通过)

#include <boost/regex.hpp>

#include <locale>

#include <iostream>

#include <string>

 

using namespace std;

 

void main()

{

    //设置语言环境为:English

    std::locale::global(std::locale("English"));

    string  str = "chinaen8Glish";

    boost::regex expr("\\w+\\d\\u\\w+");//d代表数字,

    //匹配就是1,不匹配就是0

    cout << boost::regex_match(str, expr) << endl;

 

    cin.get();

    //运行结果为:1

}

2.通过正则取出匹配到的每部分

#include <boost/regex.hpp>

#include <locale>

#include <iostream>

#include <string>

 

using namespace std;

 

void main()

{

    std::locale::global(std::locale("English"));

    string str = "chinaen8Glish9abv";

    //d代表数字

    boost::regex expr("(\\w+)\\d(\\w+)");

    boost::smatch what;

    //按照表达式检索

    if (boost::regex_search(str, what, expr))

    {

        cout << what[0] << endl; //这里是字符串本身

        cout << what[1] << endl; //这里截取的字符串的第一部分

        cout << what[2] << endl; //这里截取的字符串的第二部分

    }

    else

    {

        cout << "检索失败";

    }

    cin.get();

}

运行结果:

3.通过正则表达式将正则中的数字编成指定的字符串。

#include <boost/regex.hpp>

#include <locale>

#include <iostream>

#include <string>

 

using namespace std;

 

void main()

{

    string  str = "chinaen8  Glish9abv";

    boost::regex expr("\\d");//d代表数字,

    string  kongge = "______";

    std::cout << boost::regex_replace(str, expr, kongge) << endl;

    cin.get();

}

运行结果:

目录
相关文章
|
存储 算法 C语言
【C++ 迭代器实现 终篇】深入理解C++自定义容器和迭代器的实现与应用
【C++ 迭代器实现 终篇】深入理解C++自定义容器和迭代器的实现与应用
467 0
|
存储 搜索推荐 数据挖掘
|
存储 编译器 C语言
【深入理解函数栈帧:探索函数调用的内部机制】
【深入理解函数栈帧:探索函数调用的内部机制】
359 0
HTTP 协议的请求方法
【10月更文挑战第21天】
|
11月前
|
人工智能 自然语言处理 搜索推荐
《AI加持,让鸿蒙元宇宙交互自然度飙升》
在鸿蒙元宇宙中,人工智能通过多模态感知、个性化自适应、智能虚拟角色互动、实时场景优化及内容生成与推荐等技术,大幅提升用户与虚拟环境的交互自然度。它不仅使设备能精准捕捉用户的视觉、听觉、触觉信息,还通过学习用户行为提供个性化的体验,让虚拟角色更智能地回应情感需求,优化虚拟场景并推荐个性化内容,为用户带来沉浸式、贴心的虚拟世界体验。
210 10
|
Linux 应用服务中间件 nginx
Linux 快速搭建 Overleaf 5.0 附中文字体及完整 TexLive 安装教程(2024最新版)
2024最新版 Linux 极速安装 Overleaf 5.0 手把手教学!附 XeLatex 修复,新增中文字体以及安装完整版 TexLive 教程!
|
存储 监控 JavaScript
如何治理 Electron 版本淘宝直播应用崩溃?
如何治理 Electron 版本淘宝直播应用崩溃?
11778 0
[MFC] 编辑框中字符串的显示或获取
[MFC] 编辑框中字符串的显示或获取
276 0
|
编译器 C++
Visual Studio 2022 中如何设置背景图片,壁纸
Visual Studio 2022 中如何设置背景图片,壁纸
|
API 区块链 C++
MFC编程 -- 从空项目开始到实现计算器功能
MFC编程 -- 从空项目开始到实现计算器功能
211 0
MFC编程 -- 从空项目开始到实现计算器功能