题目:
请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均不匹配
知识点:
正则表达式:参考https://blog.csdn.net/qq_30034925/article/details/70216525
思路:
1、两个都为null时,不匹配
2、两个数组下标
3、1)如果模式中第二个字符不是'*':
如果当前字符匹配或者当前模式字符是'.' :则继续检验;否则返回false
2)如果模式中第二个字符是'*':
如果当前字符与模式中当前字符匹配:则字符向后移一位,模式中不变;(n个字符匹配)
如果当前字符与模式中当前字符匹配或模式中当前字符是'.':则字符向后移一位,模式中向后移两位