有时候需要匹配linux中的通配符,例如*和?,它们的含义为: *:匹配0个或多个字符: ?:匹配任意单个字符. 这和正则表达式中含义不一样,在正则表达式中: *:匹配前一个字符0次或者多次: ?:匹配前一个字符1次. 这时候可以使用下面的函数,s表示需要匹配的字符串,p表示含有通配符的字符串. def match_wildcard(s, p): dp = [[False for i in range(len(p) + 1)] for j in range(len(s) + 1)] dp[0][