John Gregory was born in Scunthorpe, Lincolnshire, where his father, Jack, was playing for Scunthorpe United. John made his professional football debut in 1972, at the age of 18, when playing for Northampton Town. He scored eight goals in 187 games over the next five years, before being transferred to First Division Aston Villa in 1977.
John was a considerable success at Aston Villa. Despite playing two divisions higher than he had ever done before, he adapted well to First Division football and scored 10 goals in 65 games over the next two seasons. During his time at Villa, John became the only player to play in every outfield position, wearing every number from 2 to 11 over his two seasons with the club, which remained a record, until Steve Palmer of Watford achieved this with shirt numbers 1 to 14 including playing in goal, in the 1997/98 season.
In 1979, Gregory signed for Brighton & Hove Albion, who had just won promotion to the First Division for the first time in their history. He scored seven goals in 72 games over the next two seasons before dropping down into the Second Division to sign for Queen’s Park Rangers.
He was part of the QPR side that reached the FA Cup Final in 1982 (losing to Tottenham Hotspur in a replay) and won promotion to the First Division a year later as Second Division champions. He also helped QPR finish fifth and qualify for UEFA Cup in 1984, but 1984-85 was a tough season for John and his colleagues after manager Terry Venables departed to Barcelona and successor Frank Sibley was unable to keep up QPR’s good form. At the end of a difficult season in which QPR only narrowly stayed in the First Division, John dropped down two divisions to sign for fallen giants Derby County.
Derby County, champions of England in 1972 and 1975, had fallen into the Third Division in 1984 and had failed to win promotion in 1984-85. John Gregory was the centerpiece of their midfield as they achieved promotion to the Second Division at the end of the 1985-86 season and to the First Division (as Second Division champions) a year later. John stayed for one season as Derby County survived their first top flight season for nearly a decade, before announcing his retirement as a player. He played a total of 93 league appearances for the Rams, scoring 22 goals.