带括号的MATLAB regexprep

时间:2016-08-26 00:56:13

标签: regex matlab regexp-replace

给定字符串的单元格数组:

CellArray={'(first)';'second';'x(third)';'four)'; '(...)'};

我想要以下结果:

newCellArray={'first';'second';'x(third)';'four)';'...'};

即。我想删除括号,只要它们位于单词的开头和结尾......

我想使用类似的东西:

newCellArray = regexprep(CellArray,expression,replace);

但遗憾的是,尽管经过多次尝试,但我没有成功......

1 个答案:

答案 0 :(得分:1)

您可以将beginning and end anchorstoken captureback-replace一起使用:

>> expr = '^\((.+)\)$';
>> CellArray = {'(first)';'second';'x(third)';'four)'; '(...)'};
>> newCellArray = regexprep(CellArray,expr,'$1')

newCellArray = 

    'first'
    'second'
    'x(third)'
    'four)'
    '...'