Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.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,我有以下格式的字符串: \r\nab-CD:2\r\nab-EF:1\r\nbc-DE:3\r\ndz-LF:1\r\nkr-TZ:2\r\nef-DD:1\r\nlv-ER:2\r\ndf-QW:3\r 我必须过滤掉具有值1的xx xx值。(xx:1) 因此,在示例字符串中,我必须得到的结果是 ab-EF dz-LF ef-DD 哪个正则表达式会将结果作为列表提供给我 Thanx您可以使用Regex。将与以下Regex匹配 [a-z]{2}-[A-Z]{2}(?=:1) 代码: var

我有以下格式的字符串:

\r\nab-CD:2\r\nab-EF:1\r\nbc-DE:3\r\ndz-LF:1\r\nkr-TZ:2\r\nef-DD:1\r\nlv-ER:2\r\ndf-QW:3\r
我必须过滤掉具有值
1
xx xx
值。(
xx:1

因此,在示例字符串中,我必须得到的结果是

ab-EF
dz-LF
ef-DD
哪个正则表达式会将结果作为列表提供给我


Thanx

您可以使用
Regex。将
与以下Regex匹配

[a-z]{2}-[A-Z]{2}(?=:1)
代码:

var list=Regex.Matches(输入,@“[a-z]{2}-[a-z]{2}(?=:1)”)
.Cast()
.         .选择(match=>match.Value).ToList();
试试这个演示


@当然不是。我先回答,它有
,然后把它改成
-
,你可以清楚地指出,而不是回答和评论我的答案是重复的。如果需要,请检查时间戳。
var list = Regex.Matches(input, @"[a-z]{2}-[A-Z]{2}(?=:1)")
                .Cast<Match>()
      .         .Select(match => match.Value).ToList();
[a-z]{2}-[A-Z]{2}(?=:1)
NODE                     EXPLANATION
--------------------------------------------------------------------------------
  [a-z]{2}                 any character of: 'a' to 'z' (2 times)
--------------------------------------------------------------------------------
  -                        '-'
--------------------------------------------------------------------------------
   [A-Z]{2}                 any character of: 'A' to 'Z' (2 times)
--------------------------------------------------------------------------------
  (?=                      look ahead to see if there is:
--------------------------------------------------------------------------------
    :1                       ':1'
--------------------------------------------------------------------------------
  )                        end of look-ahead