У меня есть строка, которую я прочитал из файла конфигурации. Структура строки следующая:
(long_string)long_string(long_string)
Любые пункты в скобках, включая сами скобки, являются необязательными. У меня есть следующее регулярное выражение, соответствующее всей строке, но я не могу понять, как сделать некоторые части регулярного выражения необязательными с помощью «?».
Вот несколько допустимых строк для ввода
(a)like(1)
like(very long string here)
like
Вот мое регулярное выражение, совпадающее только с первым;
^\((?<short>.*)\)(?<text>.*)\((?<return>.*)\)$
Как я могу преобразовать свое регулярное выражение, чтобы сделать скобки необязательными для совпадения?