zoukankan      html  css  js  c++  java
  • C++11正则表达式初探

    C++正则表达式

    在此之前都没有了解过C++的正则,不过现在大多数赛事都支持C++11了,因此有必要学习一下,用于快速A签到题。 * 所在头文件 ```C++ #include ``` * 正则表达式语法 跟其他语言的正则语法基本一样,要注意的是转义需要两个```\```,如匹配数字的```d```应该写成```\d```; * regex使用语法 ```C++ regex pattern("正则表达式");//匹配规则 smatch result;//用于存放匹配结果 string s;//待匹配的文本串 ``` 库里有三个函数供我们使用,下面逐一简单介绍: ```C++ regex_match(s,result,pattern); ``` 该函数是全文匹配,即从文本第一个字符开始匹配,不符就匹配失败,返回false,成功则返回true ```C++ regex_search(s,result,pattern); ``` 该函数是搜索匹配,即匹配全文中符合规则的子字符串,匹配失败返回false,成功则返回true ```C++ regex_replace(s,pattern,"用于替换的内容"); ``` 该函数用指定字符串替换文本中所有符合规则的子串 如果想要遍历一个文本串中所有的匹配结果,可以像下面这样写 ```C++ while (regex_search(s,result,pattern)) { for (int i = 1; i < result.size(); ++i) { cout << result[i] << endl; } s=result.suffix().str(); } ``` result[0]表示匹配的全部内容,result[i]表示匹配内容中的第i个组(即第i个括号中的内容)
  • 相关阅读:
    python汉诺塔
    圆周率计算
    PIL: 建立一个GIF图
    Jieba库使用和好玩的词云
    Turtle库的建立——汉诺塔
    计算pi的精度+进度条显示
    Python——我所学习的turtle函数库
    Python——教你画朵太阳花
    Python常用模块re的使用
    正则表达式字符组/元字符/量词
  • 原文地址:https://www.cnblogs.com/orangee/p/9753794.html
Copyright © 2011-2022 走看看