任何人都希望告诉我如何使用c#从这个字符串中获取整数部分?
string url = "/{localLink:1301}";
我一直在使用这样的东西,但没有让它正常工作
var getNumeric = new Regex(".*([0-9]+)");
答案 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());