Wildcard Matching

来源:互联网 发布:网络小精灵 编辑:程序博客网 时间:2024/05/15 09:28
public class Solution {    public boolean isMatch(String s, String p) {        int ids = 0, idp = 0, idstart = -1, idmatch = -1;        while (ids < s.length()) {            if (idp < p.length() && (s.charAt(ids) == p.charAt(idp) || p.charAt(idp) == '?')) {                ids++;                idp++;            } else if (idp < p.length() && p.charAt(idp) == '*') {                idstart = ids;                idmatch = idp;                idp++;            } else if (idstart != -1) {                idp = idmatch + 1;                idstart++;                ids = idstart;            } else {                return false;            }        }        while (idp < p.length() && p.charAt(idp) == '*') {            idp++;        }        return idp == p.length();    }}

0 0