使用regex和c#从字符串中获取数字部分

时间:2011-11-06 13:32:38

标签: c# regex

任何人都希望告诉我如何使用c#从这个字符串中获取整数部分?

string url = "/{localLink:1301}";

我一直在使用这样的东西,但没有让它正常工作

var getNumeric = new Regex(".*([0-9]+)");

3 个答案:

答案 0 :(得分:11)

假设您的输入中只有一个数字,您的表达式可能就像\d+一样简单。仍然在这个假设下,在结果匹配上使用ToString将为您提供所需的内容。

var regex = Regex.Match("/{localLink:1301}", @"\d+");
var result = regex.ToString();

答案 1 :(得分:2)

你的.*贪婪。您需要.*?[^\d]*

new Regex( ".*?(\d+)" );

答案 2 :(得分:1)

你可以试试这个......

string output = new string(input.ToCharArray().Where(c => char.IsDigit(c)).ToArray());