There is no maximum length of a single shift. (Many years ago, I used to work 36 hours on, 12 hours off, continuously for several months at a time. Also, until recently, that was the standard working pattern for junior doctors in hospitals. Many people, in all sorts of occupations, still work 24 hour shifts).
The only regulations which indirectly affect shift lengths relate to the intervals between shifts. In most cases, an employee is entitled to a minimum period of 11 hours rest between the end of one shift and the start of another. So, if someone finishes work at 0800 and is expected to to start work again at 1430 this would, in most cases, breach the regulations. However, jobs which involve 'round the clock' staffing (which include many jobs in care homes) are exempt from these provisions. Instead, staff are entitled to 'compensatory rest' at a later time.
See here for further information:
http://www.direct.gov.uk/Employment/Employees/ WorkingHoursAndTimeOff/WorkingHoursAndTimeOffA rticles/fs/en?CONTENT_ID=10029451&chk=pR1H4%2B
Chris