In this paper, the problem of joint dynamic spectrum access and multi-relay selection is investigated in relayenabled cooperative communication systems to maximize the system sum-capacity. Since the considered problem is a mixed integer nonlinear program, which is generally intractable to find the optimal solution, two matching theory-based suboptimal algorithms are proposed to reduce the computational complexity for two different cases. For the case that each source node can only be assisted by one relay, a cyclic three-sided matching algorithm is firstly proposed to attain the stable matching results for the selection of the source node and the relay with the spectrum band used. Then, for the case that each source node can be assisted by more than one relay, a two-step matching algorithm is proposed to perform joint dynamic spectrum access and multi-relay selection. Simulation results show that the proposed algorithms, with much lower complexity compared to the optimal exhaustive search, can achieve the near-optimal performance with a gap to the optimum being less than 5%.