1. You can use regexp_count to count the number of times a string appears
2. With regexp_replace you can remove everything before the last "Customer Input"
e.g.:
with rws as (
select 'Customer Input (25/04/22): What is your name? Problem Summary: Identify text. +++ Customer Input: My name is XYZ.' str
from dual
)
select regexp_count ( str, 'Customer Input' ) num,
regexp_replace ( str, '(.*)(Customer Input)', '\2' ) last
from rws;
NUM LAST
---------- -------------------------------
2 Customer Input: My name is XYZ.