#4245. 「2022.12五级」通配符匹配 暂未评定

时间限制:1000 ms 内存限制:128 MiB 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: root

题目描述

给定一个字符串s和一个字符模式p,请实现一个支持'?'和'*'的通配符匹配功能。

其中‘?’可以匹配任何单个字符,如‘a?c’可以成功匹配‘aac’,‘abc’等字符串,但不可匹配‘ac’,‘aaac’等字符串 。

’ 可以匹配任意长度字符串(包括空字符串),如‘ac’可以成功匹配‘ac’,‘abdc’,‘abc’,‘aaac’等字符串,但不可匹配‘acb’,‘cac’等字符串。

两个字符串完全匹配才算匹配成功。

输入格式

输入为一个数字n表示测试字符串与字符模式对数,换行。(n ≤ 30)

后续2n行为每组匹配的s与p,每行字符串后换行。

s 非空,只包含从 a-z 的小写字母。p 非空,只包含从 a-z 的小写字母,以及字符 ? 和 *。 字符串s和p的长度均小于50

输出格式

每一组匹配串匹配成功输出‘yes’,否则输出‘no’。

样例

样例输入

3
abc
abc
abc
a*c
abc
a??c

样例输出

yes
yes
no