正则表达式匹配:
头文件:
#include<regex>
例子:
#include<iostream>
#include<regex>
using namespace std;
int main()
{
regex reg("\\d{4,6}"); //匹配4--6位的数字
string testNum = "99999";
smatch result;
bool ret = regex_match(testNum, result, reg);
cout << (ret ? "格式正确" : "格式不正确") << endl;
return 0;
}
常用匹配示例:
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了
匹配双字节字符(包括汉字在内):[^\x00-\xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
匹配空白行的正则表达式:\n\s*\r
评注:可以用来删除空白行
匹配HTML标记的正则表达式:<(\s*?)[^>]*>.*?|<.*?>
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分