Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何编写正则表达式以匹配特定模式?_C#_Regex - Fatal编程技术网

C# 如何编写正则表达式以匹配特定模式?

C# 如何编写正则表达式以匹配特定模式?,c#,regex,C#,Regex,我需要根据文件夹的名称识别它 需要与此模式匹配的正则表达式“(任意数字)” 所以空格,虚线空格括号,任意数字括号,闭合虚线空格 文件夹列表:- 文件夹A-(0)-费用 文件夹A-(0)-账单 文件夹B-1-日工资 文件夹C-杂项 文件夹D-(100)-库 正则表达式应该匹配1、2和5,您只需要转义(和),因为它们对定义组有特殊意义: @" - \(\d+\) -" 根据示例#5,您似乎需要数字,因此也在数字中添加了重复。虽然这是一个简单的解决方案,但为什么会被否决?这是一个特定的问题,已经展示

我需要根据文件夹的名称识别它

需要与此模式匹配的正则表达式“(任意数字)

所以空格,虚线空格括号,任意数字括号,闭合虚线空格

文件夹列表:-

  • 文件夹A-(0)-费用
  • 文件夹A-(0)-账单
  • 文件夹B-1-日工资
  • 文件夹C-杂项
  • 文件夹D-(100)-库

  • 正则表达式应该匹配1、2和5,您只需要转义
    ,因为它们对定义组有特殊意义:

    @" - \(\d+\) -"
    

    根据示例#5,您似乎需要数字,因此也在数字中添加了重复。

    虽然这是一个简单的解决方案,但为什么会被否决?这是一个特定的问题,已经展示了解决它的尝试,并且有一个很好的样本数据列表可以匹配。也许这只是因为我自己对正则表达式非常糟糕,但这似乎是相当合理的。如果其中一个对regex来说相对较新,那么当匹配范围(如
    [a-z]
    的字符在括号中而不是括号中时,您可能不需要转义括号。
    @" - \(\d+\) -"