-
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
1. 当模式第二位是*时 ,且第一位字符匹配,分三种匹配模式:
1. 把*当做0,就是忽略掉前两位X*,继续做匹配;
2. 把*当做是1,字符串后移一位,模式后移两位跳过这个*,继续匹配;
3. 把*当做 >1,即可能字符串的下一位与上一位相同,所以做匹配。
如果不匹配,模式后移两位。
2. 当模式第二位不是*时,如果第一位匹配则全部后移一位进行匹配,否则直接返回false。
public class Solution {
public boolean match(char[] str, char[] pattern)
{
if(str == null && pattern == null)
return false;
int strIndex = 0;
int patternIndex = 0;
return matchCore(str,strIndex,pattern,patternIndex);