• leetcode[10]Regular Expression Matching


    Implement regular expression matching with support for '.' and '*'.

    '.' Matches any single character.
    '*' Matches zero or more of the preceding element.
    
    The matching should cover the entire input string (not partial).
    
    The function prototype should be:
    bool isMatch(const char *s, const char *p)
    
    Some examples:
    isMatch("aa","a") → false
    isMatch("aa","aa") → true
    isMatch("aaa","aa") → false
    isMatch("aa", "a*") → true
    isMatch("aa", ".*") → true
    isMatch("ab", ".*") → true
    isMatch("aab", "c*a*b") → true
    class Solution {
    public:
        bool isMatch(const char *s, const char *p) {
        if (*p=='')
            return *s=='';
        if (*(p+1)=='*')
        {
            while((*s!='')&&((*s==*p)||(*p=='.')))
            {
                if (isMatch(s,p+2))
                {
                    return true;
                }
                else
                {
                    s++;
                }
            }
            return isMatch(s,p+2);
        } 
        else 
        {
            if((*s!='')&&((*s==*p)||(*p=='.')))
            {
                return isMatch(s+1,p+1);
            }
            return false;
        }
        }
    };
  • 相关阅读:
    本地存储 localStorage
    正则对象
    面向对象
    事件
    日期对象
    网易适配与淘宝适配
    自动把网页px单位转换成rem
    湖南省web应用软件(中慧杯)
    百度图片审核功能
    百度ai语音识别
  • 原文地址:https://www.cnblogs.com/Vae1990Silence/p/4283699.html
Copyright © 2020-2023  润新知