Young87

SmartCat's Blog

So happy to code my life!

游戏开发交流QQ群号60398951

当前位置:首页 >AI写作

c#题例-2025-08-29 14:19:48

编写一个C#程序,实现一个支持通配符匹配的函数,用于判断给定的字符串是否匹配指定的模式。模式中包含以下通配符:

- `?` 匹配任意单个字符;
- `*` 匹配任意字符序列(包括空序列)。

函数签名如下:

```csharp
bool IsWildcardMatch(string input, string pattern)
```

要求:

1. 不得使用正则表达式(Regex)或类似封装好的匹配函数;
2. 实现需高效处理长字符串和复杂模式;
3. 支持转义字符:如果模式中出现 `\`,则其后一个字符应视为普通字符而非通配符;
4. 编写单元测试验证函数的正确性,覆盖以下场景:
- 基本匹配(如 `input = "hello"`,pattern = `"h?llo"`);
- 通配符 `*` 的使用(如 `input = "world"`,pattern = `"w*"`);
- 转义字符处理(如 `input = "a?b"`,pattern = `"a\?b"`);
- 多个 `*` 的情况(如 `input = "abcxyz123"`,pattern = `"a*xyz*"`);
- 极端情况(如空字符串、连续多个 `*`、模式长度远大于输入字符串等)。

请提供完整可运行代码及测试用例。

除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇:无

下一篇: c#题例-2025-08-29 07:33:04

精华推荐