正则表达式:如何获得没有前导数字的文件名?

时间:2011-07-04 08:10:36

标签: c# regex

我对c-sharp的正则表达式完全无用:我如何解析文件名中的前导数字?例如。 413_somename.suffix。我需要:_somename.suffix

我怎样才能做到这一点?

THX!

p.s。:数字的数量是1到n ......

3 个答案:

答案 0 :(得分:8)

Regex rgx = new Regex("^[0-9]*");
string s = rgx.Replace("413_somename.suffix", "");

答案 1 :(得分:4)

总是相同的模式吗? number_somename.suffix?然后imo RegEx太过分了,只会让事情变得复杂 试试这个:

var s = "1234_somename.suffix";
var result = s.Substring(s.IndexOf("_"));

答案 2 :(得分:2)

两个非正则表达式选项。

首先,使用TrimStart

filename = filename.TrimStart("0123456789".ToCharArray());

使用LINQ的另一个选项:

filename = String.Concat(filename.SkipWhile(Char.IsDigit));