如何修复此正则表达式?

How to fix this regexp?

我有一个正则表达式 (,\s*?\n)(\s*?)),根据 https://regex101.com/ 它应该可以工作。唯一的问题是事实并非如此。我想要实现的是:

'some text, )'

将转换为

'some text )'

我知道,如果我的正则表达式能以某种方式工作,那么输出字符串将是:

'some text)'

有什么方法可以不将 ')' 移动到与 'some text' 相同的行吗?

我用来测试的样本:

declare
    l_example varchar2(32000);
begin
    l_example :='some text,
    )';
    dbms_output.put_line(l_example);
    l_example := regexp_replace(l_example, '(,\s*?\n)(\s*?\))', '');
    dbms_output.new_line;
    dbms_output.put_line(l_example);
END;
/

请检查:

regexp_replace(l_example, '(,\s*?'|| CHR(10)||' *)(\s*?\))', '', 1, 1,'m');

db<>fiddle