You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于C#或其他方法提取符合coolboy*.easy格式的目标文本

提取符合coolboy*.easy格式文件名的C#实现

核心方案

用正则表达式精准定位目标格式的文件名,从带乱码的干扰文本里提取出干净结果,这是最直接高效的方式。

完整代码示例

using System;
using System.Text.RegularExpressions;

class FileNameExtractor
{
    static void Main()
    {
        // 示例带乱码的输入文本
        string messyInput = "‹: coolboy77.easy h½…:;L:ò> 测试内容coolboy954.easy 乱码堆coolboy5.easy 无关文本";
        
        // 正则规则:匹配coolboy开头+任意数字+.easy结尾的格式
        // 要是需要支持coolboy后跟任意字符,把\d+改成.*?即可(.*?是非贪婪匹配,避免连多个文件名一起抓)
        Regex targetRegex = new Regex(@"coolboy\d+\.easy");
        
        // 提取所有符合规则的结果
        MatchCollection results = targetRegex.Matches(messyInput);
        
        // 输出提取到的干净文件名
        foreach (Match match in results)
        {
            Console.WriteLine(match.Value);
        }
    }
}

代码细节说明

  • 正则表达式拆解:
    • coolboy:匹配固定前缀,确保是目标文件名的开头
    • \d+:匹配1个及以上数字,对应示例里的77、954、5这类数字后缀
    • \.easy:匹配固定后缀,.在正则里是特殊字符,必须用\转义才能匹配真实的点号
  • 乱码适配:不管周围有多少非ASCII乱码,只要目标文件名是标准ASCII字符组成,正则就能精准抓取
  • 批量提取:Regex.Matches会返回所有符合规则的匹配项,一次性处理多个目标文件名

备选非正则实现(适合简单场景)

如果不想用正则,也可以手动遍历字符串:

  • 循环查找文本中coolboy的起始位置
  • 从该位置开始,继续查找.easy的结束位置
  • 截取两个位置之间的字符串,验证格式后保留

不过这种方式代码量更大,应对复杂干扰内容时容错性不如正则,优先推荐正则方案。

内容的提问来源于stack exchange,提问作者NoneHelper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 21:25:24