Probably over analysing this a little bit but how would stackoverflow suggest is the best way to return an integer that is contained at the end of a string.
Thus far
Regex pattern like \d+$ is a bit expensive since, by default, a string is parsed from left to right. Once the regex engine finds 1 in 12abc34, it goes on to match 2, and when it encounters a, the match is failed, next position is tried, and so on.
However, in .NET regex, there is a RegexOptions.RightToLeft modifier. It makes the regex engine parse the string from right to left and you may get matches that are known to be closer to the end much quicker.
var result = Regex.Match("000AB22CD1234", @"\d+$", RegexOptions.RightToLeft);
if (result.Success)
{
Console.Write(result.Value);
} // => 1234
See the online C# demo.