c#题例-2025-08-29 07:33:04
日期: 2025-08-29 分类: AI写作 11次阅读
编写一个C#程序,实现一个支持通配符匹配的正则表达式引擎,满足以下条件:
- 输入字符串只包含小写字母 a-z
- 模式字符串支持以下字符和操作符:
- 小写字母 a-z,与输入字符精确匹配
- `.` 匹配任意单个字符
- `*` 匹配零个或多个前面的元素(前一个字符)
- 实现匹配函数 `bool IsMatch(string input, string pattern)`
- 要求高效处理长字符串场景,避免暴力递归
- 请考虑以下测试用例并确保通过:
```csharp
IsMatch("aa", "a") // false
IsMatch("aa", "a*") // true
IsMatch("ab", ".*") // true
IsMatch("aab", "c*a*b") // true
IsMatch("aaa", "aaaa") // true
IsMatch("aaa", "a*a") // true
IsMatch("aaa", "a*aa") // false
IsMatch("ab", ".*c") // false
IsMatch("ab", ".*a") // false
IsMatch("abcd", "a.*d") // true
```
要求:
- 使用动态规划方法实现
- 代码结构清晰,命名规范,具备良好的注释
- 处理边界条件,如空输入、连续 `*` 等非法模式
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:AI写作
精华推荐