无法将类型 'string' 隐式转换为'System.Text.RegularExpressions.Match'



我使用正则表达式编写了一些代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = @"ch/js/789747b7/scriptSearch.js"",videoJsSrc:""res/batch/js/3c9a6ee1/scriptVideo.js"",apiFormAppJSSrc:""res/batch/js/9fa7e22b/apiFormApp.js"",easyXDMJs:""res/batch/js/8f3e66db/easyXDM.min.js"",nativeHooksSrc:""res/batch/js/539ea638/nativeHooks.js"",gwtHash:""1bcb94eb"",jsessionId:";
            Match output = Regex.Match(input, @"gwtHash:""(.*?)""").Value;
            Console.WriteLine(output);
            Console.ReadKey();
        }
    }
}

但是我收到此错误:

Error   1   Cannot implicitly convert type 'string' to 'System.Text.RegularExpressions.Match'   C:UsersasusAppDataLocalTemporary ProjectsConsoleApplication1Program.cs   14  28  ConsoleApplication1

怎么了?

­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­

属性Value具有string的类型。因此,您需要将Regex.Match方法的结果分配给Match对象,然后将其Value写入控制台

Match output = Regex.Match(input, @"gwtHash:""(.*?)""");
Console.WriteLine(output.Value);

或者output变量类型更改为字符串:

string output = Regex.Match(input, @"gwtHash:""(.*?)""").Value;
Console.WriteLine(output);

获取1bcb94eb使用

Match output = Regex.Match(input, @"gwtHash:""(.*?)""");
if (output.Success)
    Console.WriteLine(output.Groups[1].Value);

最新更新