Всем привет, помогите пожалуйста решить задачу.
Нужно определить если у строки вначале открывающие скобки, а вконце закрывающие, то надо взять текст между ними. А если скобки не закрываются или их вообще нет, или не открываются, то вернуть всю строку.
То есть в такой строке "(hello)" или "(((hello)))" надо вернуть hello, а в такой строке "hel(lo)" вернуть hel(lo).
Прошу помощи.
Идти с разных концов в цикле. Если в начале встретилась скобка открывающая, и одновременно с этим в конце нет закрывающей скобки -> исключение. Иначе идём дальше, если идут парные скобки n раз, то ок, просто сдвигаем границы. ( Пример: ((а)) ). Если после этого опять не соответствуют скобки (пример: (((аа)а)) ), то обрываем цикл и возвращаем substring в интервале этих двух концов, которые мы меняли в цикле. Но наверное ещё нужен флаг на то, что уже были скобки встречены в самый первый раз. Примерно так, не отрицаю, что есть более изящное решение, но в лоб такое вот пришло