正则表达式使用有两个过程,即匹配和替换,在C++中使用其进行字符串的处理是非常方便的,所有关于正则表达式的使用函数都在STL的regex库中。
一、匹配
匹配就是将源字符串和模式串进行匹配,返回结果用bool值来表示,涉及到几个函数的具体用法如下:
1、regex_match(src, regex)和regex_match(src, matchResult, regex)
regex_match(src, regex)用来判断表达式pat是否能与src完全匹配,从头到尾匹配成功则返回true,否则返回false。
重载版本regex_match(src, matchResult, regex)判断src中是否有与regex匹配的子串,其中regex中用()分割表示与原串匹配的多个子模式,匹配成功的子串存放在容器matchResult中,当然这是建立在src与regex从头到尾完全匹配,结果返回为true的基础上。
2、regex_search(src, regex)和regex_search(src, matchResult, regex)
这两个函数的基本用法和上面两个基本相同,不同点在于这两个函数可以用来匹配子串,也就是说不要求src与regex完全匹配,只要其中有子串和regex匹配即返回true。
代码示例如下:
#include <iostream>
#include <string>