Снятие внешних скобок с веревки

У меня возникли некоторые проблемы при написании выражения регулярного выражения, которое будет убирать внешние скобки из строки (я хочу убедиться, что любые скобки в одинарных / двойных кавычках сохраняются):

((0)) becomes 0
(0)   becomes 0
('(0845) 187 1262') becomes '(0845) 187 1262'

У меня есть два регулярных выражения, соответствующих левым и правым внешним скобкам:

^[\(]*  -- matches out the left outer brackets
[\)]*$  -- matches out the right outer brackets

Можно ли объединить оба в одно регулярное выражение?

1 ответ

Решение

Да, это совсем не сложно, и ваше регулярное выражение также может быть упрощено, так как вам не нужны классы символов:

^\(*|\)*$
Другие вопросы по тегам