I created a separate database table, name SUFFIXES, to hold the list of suffixes.
create table SUFFIXES (SUFFIX varchar2(5))
I created another database table to hold the surnames.
create table SURNAMES (SURNAME varchar2(20))
Use LISTAGG to get a regular expression containing all the suffixes with alternation.
select listagg(SUFFIX, '|') from SUFFIXES
Use REGEXP_REPLACE to first replace unwanted punctuation.
select regexp_replace(SURNAME, ',|/') from SURNAMES
Note that in the sample data in your question there is only comma (',') and forward slash ('/').
Use another REGEXP_REPLACE on the result of the above to then remove the suffixes.
select regexp_replace((regexp_replace(SURNAME, ',|/')), (select listagg(SUFFIX,'|') from SUFFIXES)) as RESULT
from SURNAMES
where SURNAME like ('SMITH%')
Refer to this db<>fiddle.
By the way – not that it affects the question or answer – according to Guide to Writing Men's Names with Suffixes, if grandfather, father and son all have the same name, then the grandfather's suffix is Sr, the father's suffix is Jr and the son's suffix is III. In other words there is no I suffix nor is there a II suffix.