我确信这很简单,但我无法弄清楚。
我有一个看起来像这样的字符串:
control366NameJ04
我想解析第二个号码' 04'从那个字符串。
我尝试使用正则表达式,但我只能提取第一个数字' 366'。
Regex.Match(control,@"\d+");
如何用正则表达式解析字符串中的第二个数字。如果我不能使用正则表达式,我可以在C#中使用其他东西吗?
答案 0 :(得分:2)
如果你知道第二个数字将是字符串的结尾,你可以使用这个正则表达式:
\d+$
它将匹配紧跟在字符串结尾之前的一个或多个数字。
答案 1 :(得分:2)
您可以使用Regex.Matches
获取字符串中的所有匹配项,然后您可以在返回的Match
数组中获得所需的任何位置
var matches = Regex.Matches(control, @"\d+");
答案 2 :(得分:2)
var d = Regex.Matches("control366NameJ04", @"\d+").Cast<Match>().Last().Value;