C# 谁能帮我学一下正则表达式吗?

C# 谁能帮我学一下正则表达式吗?,c#,.net,regex,C#,.net,Regex,我正试图在报价之间找到所有的东西。报价单之间的内容是文件位置。因此,它将类似于“C:\Users\Documents and Settings\Pictures\mypic.bmp”,我当前使用的正则表达式是: "([""'])(?:(?=(\\?))\2.)*?\1" 它可以获取数字和字母,但在反斜杠处将其拆分。有人能帮我吗,这样我就可以匹配完整的字符串了 提前谢谢。我同意: @"""\s*(.*?)\s*""" 我用来测试它的示例代码: protected void btn

我正试图在报价之间找到所有的东西。报价单之间的内容是文件位置。因此,它将类似于“C:\Users\Documents and Settings\Pictures\mypic.bmp”,我当前使用的正则表达式是:

   "([""'])(?:(?=(\\?))\2.)*?\1"
它可以获取数字和字母,但在反斜杠处将其拆分。有人能帮我吗,这样我就可以匹配完整的字符串了

提前谢谢。

我同意:

@"""\s*(.*?)\s*"""
我用来测试它的示例代码:

    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        Match match = Regex.Match(txtString.Text, @"""\s*(.*?)\s*""",
            RegexOptions.IgnoreCase);

        if (match.Success)
        {
            string key = match.Groups[1].Value;
            lblFinal.Text = key;
        }
    }

我们能修正我的反对票吗?;)

您可以使用以下正则表达式(用C#string literal引用):

没有C#文字转义

\"(.+?)\"
这样,匹配的组将成为引号中的字符串

如果测试在

来源

"C:\Users\Documents and Settings\Pictures\mypic.bmp"
图案

\"(.+?)\"
结果

C:\Users\Documents and Settings\Pictures\mypic.bmp

嗨,马修,谢谢你的回复。我使用的第一个有问题,因为第三个\后的引用。第二种方法有效,除非我尝试使用文件夹名称中有空格和数字的文件,否则会将其拆分。例如C:\Users\Documents and Settings\My folder 2012\Pictures。您可以发布如何使用此正则表达式的代码(作为问题的编辑)吗?在本地测试正则表达式对我来说效果很好,因此它可能是您如何实例化
regex
类或如何解释结果的标志。嗯,在使用derekslager.com上的工具检查两个正则表达式时,如果我没有得到与此输入匹配的结果:“C:\Users\Cyborg\Documents\Visual Studio 2012\Project Files\Cell.png”只有第三个示例适用于该工具,前两个正则表达式(实际上是相同的)这对您来说很方便,因此您可以复制/粘贴它们,而不必转义字符串的特殊字符。如果第三个示例不适合您,请确保在模式之前或之后没有空格(因为这似乎会影响测试工具)。很抱歉,它与以正则表达式作为参数的控件有关。非常感谢。我真的很感激。我应该提到它是字符串文字…但这确实有效。谢谢Ron。我很感激。没问题。我为最初文章中的混淆道歉。请参阅:
\"(.+?)\"
C:\Users\Documents and Settings\Pictures\mypic.bmp