我正在尝试使用正则表达式,并且具有以下字符串:

M3A4S0S3I2M1O4
M3a4s0s3i2m1o4
m3a4s0s3i2m1o4
F3a4i0l4l1a6
30470041106042700156
30470031201042506146


字符串模式为string pattern = @"\D";,我要打印:

M3A4S0S3I2M1O4
M3a4s0s3i2m1o4
m3a4s0s3i2m1o4
F3a4i0l4l1a6


因为它在此字符串中找到匹配项。我不打印30470041106042700156
30470031201042506146因为找不到任何匹配项。
我写代码:

using System;
using System.Text.RegularExpressions;

public class Example
{
    public static void Main()
    {
        string pattern = @"\D";
        string input = @"M3A4S0S3I2M1O4 M3a4s0s3i2m1o4 m3a4s0s3i2m1o4    F3a4i0l4l1a6 30470041106042700156 30470031201042506146";


但是我不知道该怎么办。我该如何解决?

最佳答案

using System;
using System.Text.RegularExpressions;

public class Program {
    public static void Main() {
        string[] input = { "M3A4S0S3I2M1O4", "M3a4s0s3i2m1o4", "m3a4s0s3i2m1o4", "F3a4i0l4l1a6", "30470041106042700156", "30470031201042506146" };
        foreach (var line in input)
            if (Regex.IsMatch(line, @"\D"))
                Console.WriteLine(line);
    }
}


输出量

M3A4S0S3I2M1O4
M3a4s0s3i2m1o4
m3a4s0s3i2m1o4
F3a4i0l4l1a6

07-28 00:25