REGEX: (\b(SUBSTR)+\(.*?,.*?,.*?\))
import re
s = "SUBSTR(name,1,20) first_name, last_name, name"
print(re.sub(r"(\b(SUBSTR)+\(.*?,.*?,.*?\))", "", s).strip())
Выход:
first_name, last_name, name
Шаблон удаляет часть строки, которая начинается с SUBSTR и все, что остается после него в () . Если есть () , то должно быть три значения с разделителем ',' . Он не будет удалять, например, SUBSTR()
, потому что нет входных значений. Если он должен быть удален, используйте \b(SUBSTR)+\(.*?\))
.