c#题例-2025-08-24 11:33:11
日期: 2025-08-24 分类: AI写作 9次阅读
编写一个C#程序,实现一个支持通配符匹配的正则表达式引擎,支持以下规则:
- '.' 匹配任意单个字符
- '*' 匹配零或多个前面的元素
该引擎需要支持以下函数签名:
```csharp
bool IsMatch(string text, string pattern)
```
要求:
1. 不能使用任何内置的正则表达式库(如System.Text.RegularExpressions)。
2. 实现需具备时间效率优势,尽可能优化时间复杂度。
3. 需要处理动态规划或递归中的重叠子问题优化。
4. 考虑边界条件,例如多个连续 '*'、空输入、完全匹配等。
示例:
```csharp
IsMatch("aa", "a") → false
IsMatch("aa", "a*") → true
IsMatch("ab", ".*") → true
IsMatch("aab", "c*a*b") → true
IsMatch("aaa", "aaaa") → false
IsMatch("mississippi", "mis*is*p*.") → false
```
请实现该函数并编写若干单元测试用例验证其正确性。
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:AI写作
上一篇:无
精华推荐