I was wondering if anyone had put together something or had seen something equivalent to the JavaScript parseInt for C#.
Specifically, i'm looking to take a string like:
123abc4567890
and return only the first valid integer
123
I have a static method I've used that will return only the numbers:
public static int ParseInteger( object oItem )
    {
        string sItem = oItem.ToString();
        sItem = Regex.Replace( sItem, @"([^\d])*", "" );
        int iItem = 0;
        Int32.TryParse( sItem, out iItem );
        return iItem;
    }
The above would take:
ParseInteger( "123abc4567890" );
and give me back
1234567890
I'm not sure if it's possible to do with a regular expression, or if there is a better method to grab just the first integer from the string.
You are close.
You probably just want:
foreach (Match match in Regex.Matches(input, @"^\d+"))
{
  return int.Parse(match.Value);
}
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With