We study many-to-one matchings, such as the assignment of students to colleges, where the students have preferences over the other students who would attend the same college. It is well known that the core of this model may be empty, without strong assumptions on agents' preferences. We introduce a method that finds all core matchings, if any exist. The method requires no assumptions on preferences. Our method also finds certain partial solutions that may be useful when the core is empty.