#include<iostream>
#include<string.h>
using namespace std;
bool isMatch(const char* regular,const char* dest)
{
while(*dest!='\0'||* regular!='\0')
{
if(*dest==* regular)
{
dest++;
regular++;
}
else if(*regular=='*')
{
*regular++;
while(*regular==*dest)
{
//if(*dest==*dest++)
*dest++;
}
*regular++;
}
else return false;
}
return true;
}
int main()
{
//char a[]="aa1123ddef222";
//char b[]="aa*123*def*2";
char a[]="aa1123ddef222222222222222";
char b[]="aa*123*def*2";
bool r=isMatch(b,a);
if(r==false)cout<<"false"<<endl;
else cout<<"true"<<endl;
return 0;
}
#include<string.h>
using namespace std;
bool isMatch(const char* regular,const char* dest)
{
while(*dest!='\0'||* regular!='\0')
{
if(*dest==* regular)
{
dest++;
regular++;
}
else if(*regular=='*')
{
*regular++;
while(*regular==*dest)
{
//if(*dest==*dest++)
*dest++;
}
*regular++;
}
else return false;
}
return true;
}
int main()
{
//char a[]="aa1123ddef222";
//char b[]="aa*123*def*2";
char a[]="aa1123ddef222222222222222";
char b[]="aa*123*def*2";
bool r=isMatch(b,a);
if(r==false)cout<<"false"<<endl;
else cout<<"true"<<endl;
return 0;
}