Not since the introduction of Mobile Number Portability (MNP), which allows you to port your number to any operator, can mobile telephone prefixes be relied upon to determine the current operator of a particular mobile number.
Thank you kempie for your prompt answer. Can you advise whether this MNP relates to pay-as-you-go phone numbers, as these usually are locked to a specific provider; for example my own PAYG Vodafone number has the 07733 prefix.
Pay as you go phones can be unlocked and you can keep the same number afterwards, or you can do as my partner is doing now and use a contract sim in a pay as you go phone. So no, you can't tell from a number whether it's contract or pay as you go, nor can you tell which network it runs on, due to the number portability mentioned in the other replies. May I ask why you need this information?