刚好最近在学编译原理 有点想按照语法分析写..不过用不着 因为知道正则表达式对一个串可能有多种匹配方法,所以要准备好回溯. 有最优子结构,一段s由一段p生成,于是dp. 常规思路是从前开始逐个字符匹配 这里想一下,倒着匹配考虑的情况少一些(其实是想正写发现太难了...囧) dp[i][j]表示s[i:]可以由p[j:]生成(匹配.)于是就只需要考虑0-i-1,0-j-1的匹配 match是某个生成式的字符(x或.,而不是*)与某个串某个字符匹配 如s=abbb,p=ab* bbb与b*匹配,每一…