Шаблон, который вы пробовали, (#|\?)(.*)
захватывает либо #
, либо ?
, используя группу захвата с чередованием |
, за которым следует захват 0+ раз любого символа в другой группе захвата.
Но в замене указана пустая строка, удаляющая все совпадающее.
Вы можете использовать класс персонажей ([#?])
в группе захвата, чтобы захватить одного из перечисленных.
Чтобы выполнить замену только там, где есть что-то после совпадения, вы можете сопоставить 1+ раз любой символ, кроме новой строки, используя .+
Чтобы удалить то, что идет после совпадающего символа, вы можете обратиться к группе захвата, используя \\1
, чтобы сохранить #
или ?
и удалить то, что соответствует впоследствии.
Шаблон может выглядеть так:
([#?]).+
person
The fourth bird
schedule
19.01.2020
?
или#
, вы должны использовать группу 1 в замене\\1
Шаблон может быть([#?]).+
- person The fourth bird   schedule 19.01.2020REGEXP_REPLACE(Landing Page,'(?s)[#?].*','')
- person Wiktor Stribiżew   schedule 19.01.2020