One way would be to use a test environment (so you don't break any production data) and run all of the stored procedures and see which ones give a data set as a result. Not ideal, but SQL has no magic way to know if a stored procedure will return a data set or not. And trying to do it by reading the code or searching for keywords won't work either as it MAY have a SELECT INTO or INSERT INTO SELECT for example. Both of these will contain the "SELECT" keyword, but aren't returning a data set.
And to make it more fun, it could be that stored procedure A calls stored procedure B and B gives a data set as a result but A doesn't directly. And some stored procedures can give multiple data sets as a result. This can be useful in applications and is a method I have used in the past (single stored procedure returns 3 data sets to the application).
Now, if you have a good naming convention with your stored procedures, you MAY be able to use that. For example, where I work, we use _RO as a suffix on stored procedures that are READ ONLY. The only good reason to have a read-only stored procedure would be to return a data set (you could also do it for data sanity checking and return a variable to indicate success or failure or whatever, but we generally bake sanity checking into the stored procedure). We use RW to indicate read/write (returns a data set AND changes some data), WO for write only (changes data, no data set returned). So, if we wanted to see all of the stored procedures that return a data set, we would look for %_RO or %_RW in the procedure name. You COULD do %_R%, but this runs the problem of a stored procedure like "Update_Requirements_WO" where "_R" shows up but it is not a read-based stored procedure.
Alternately, you may be able to filter down those 1500 stored procedures by looking at where they are used. SSRS (power BI, Tableau, Excel, any reporting solution) would return a data set for example.
But like Grant said, there is not going to be any easy, automated, reliable way that I can think of to get this information just from the query text.