c++ regex用法实例 2
Posted qianbo_insist
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++ regex用法实例 2相关的知识,希望对你有一定的参考价值。
目的
,承接用法实例1,此次目的是可以发现ip地址和域名地址是否基本合法
code
#include <regex>
#include <iostream>
#include <string>
using namespace std;
#define GETN(x) sizeof(x)/sizeof(char*)
int main()
regex Pattern_ip("((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.)3(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])");
regex Pattern_domain("([0-9A-Za-z\\\\-_\\\\.]+)\\\\.([0-9a-z]+\\\\.[a-z]2,3(\\\\.[a-z]2)?)");
const char *ips[] = "192.168.20.250","1.1.1.1","abc" ;
const char *domain[] = "192.168.20.250","1.1.1.1","www.baidu.com.cn" ;
int n = GETN(ips) ;
for (int i = 0; i < n; i++)
//string s = ips[i];
if (regex_match(ips[i], Pattern_ip))
cout << "ok ip" << endl;
else
cout << "ip address not ok" << endl;
n = GETN(domain);
for (int i = 0; i < n; i++)
if (regex_match(domain[i], Pattern_domain))
cout << "ok domain" << endl;
else
cout << "domain not ok" << endl;
return 0;
结果
以上是关于c++ regex用法实例 2的主要内容,如果未能解决你的问题,请参考以下文章