C# 正则表达式检查4位字符串和空格?

C# 正则表达式检查4位字符串和空格?,c#,regex,string,C#,Regex,String,需要一个正则表达式来检查4位字符串和trail中的空格 我试过了 if (Regex.IsMatch(ln.TrimStart(), @"^[0-9]{4}.*")) 而且 Regex.IsMatch(line.TrimStart(), @"^\d{4}") 有效的是 0990 09253U108 BX 0990 02376R102 AAL 但不知道为什么它也被认为是有效的 00000003610014112202013 2

需要一个正则表达式来检查4位字符串和trail中的空格

我试过了

if (Regex.IsMatch(ln.TrimStart(), @"^[0-9]{4}.*"))
而且

Regex.IsMatch(line.TrimStart(), @"^\d{4}")
有效的是

0990 09253U108      BX    
0990 02376R102      AAL
但不知道为什么它也被认为是有效的

00000003610014112202013               2                5
00000003610014112192013               2               47
我不想超过两行。如何修复正则表达式? 继续, 你能帮我检查一下下面的字符串吗

 C              DTCCUS33XXX    2039   92857W209      VOD    USD  VOD    C 04/19/2014   39.000  04/19/2014                     200
是否可以使用正则表达式验证2039的位置

^[0-9]{4}.*
         ^^ matches anything
目前我正在做

line.Substring(31, 7).Trim().ToString();
但是我希望它是用正则表达式来完成的

^[0-9]{4}.*
         ^^ matches anything
您需要
@“^[0-9]{4}\s.*”

您需要
@“^[0-9]{4}\s.*”

您需要
@“^[0-9]{4}\s.*”


您需要
@“^[0-9]{4}\s.*”

如果希望它以4位数字和一个空格开头,请使用
\s
匹配空格。目前您没有它,它匹配任何以4位数字开始的内容

@"^[0-9]{4}\s.*"

如果希望以4位数字和空格开头,请使用
\s
匹配空格。目前您没有它,它匹配任何以4位数字开始的内容

@"^[0-9]{4}\s.*"

如果希望以4位数字和空格开头,请使用
\s
匹配空格。目前您没有它,它匹配任何以4位数字开始的内容

@"^[0-9]{4}\s.*"

如果希望以4位数字和空格开头,请使用
\s
匹配空格。目前您没有它,它匹配任何以4位数字开始的内容

@"^[0-9]{4}\s.*"

^[0-9]{4}\s.
强制执行空间

^[0-9]{4}\s.
强制执行空间

^[0-9]{4}\s.
强制执行空间

^[0-9]{4}\s.
强制执行空间