請實現乙個函式用來匹配包括'.'和'*'的正規表示式。模式中的字元'.'表示任意乙個字元,而'*'表示它前面的字元可以出現任意次(包含0次)。 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串"aaa"與模式"a.a"和"ab*ac*a"匹配,但是與"aa.a"和"ab*a"均不匹配
class solution
bool choose(char* str, char* pattern)
else
return choose(str,pattern+2);
}if(*str==*pattern || (*pattern =='.'&& *str!='\0'))
return false;
*///以下是自己想法 有些冗餘 上面是劍指的思路
while(*str!='\0')
else if(*pattern =='.' && *(pattern+1)=='*')
else if(*pattern =='.')
else if(*(pattern+1)=='*')
else
return false;
}while(*pattern !='\0')
return true;
}};
刷題 正規表示式匹配
請實現乙個函式用來匹配包括 和 的正規表示式。模式中的字元 表示任意乙個字元,而 表示它前面的字元可以出現任意次 包含0次 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串 aaa 與模式 a.a 和 ab ac a 匹配,但是與 aa.a 和 ab a 均不匹配 基本思路 遞迴,根據模式中...
牛客網 正規表示式匹配
給出匹配串,給出模式串。給出兩種正則運算,乙個是.點 表示佔位代表任意乙個字元,乙個是字元 例如a 代表此處可以有任意個 前面的字元。一開始想著是正著慢慢模擬,但是顯然不可行,正著做顯然是直接使用了前面的字元,而每次特殊判斷字元後是不是 號過於複雜。第二個想著是倒著匹配,碰到 號了往新串中新增字元,...
python刷題之 正規表示式匹配
題解簡直精妙。雖然非常費時間,回頭再補上省時間的方法,想必也很精妙 class solution def ismatch self,s str,p str bool if not p return not s first match bool s and p 0 in if len p 2 and ...