Qual é o mais rápido? Regex ou EndsWith?

O que seria mais rápido?

public String Roll()
{
    Random rnd = new Random();
    int roll = rnd.Next(1, 100000);
    if (Regex.IsMatch(roll.ToString(), @"(.)\1{1,}$"))
    {
        return "doubles";
    }
    return "none";
}

Ou

public String Roll()
{
    Random rnd = new Random();
    int roll = rnd.Next(1, 100000);
    if (roll.ToString().EndsWith("11") || roll.ToString().EndsWith("22")  || roll.ToString().EndsWith("33")  || roll.ToString().EndsWith("44")  || roll.ToString().EndsWith("55")  || roll.ToString().EndsWith("66")  || roll.ToString().EndsWith("77")  || roll.ToString().EndsWith("88")  || roll.ToString().EndsWith("99")  || roll.ToString().EndsWith("00"))
    {
        return "doubles";
    }
    return "none";
}

Atualmente, estou usando uma lista if-statement muito longa, cheia de expressões regulares para verificar se um int termina com duplos, triplos, quads, quints, etc ... então eu gostaria de saber qual é o mais rápido antes de alterar tudo .

questionAnswers(7)

yourAnswerToTheQuestion