I have a string like '[Hello]'. Now I want to get only the text between the brackets []. The result should be 'Hello'. When the string is '(Hello)' the result should be empty.
I tried with regexp but was not successfully.
regexp('[Hello]', '(\w)')
ans = 2 3 4 5 6
But I get the same result with normal brackets in the string
regexp('(Hello)', '(\w)')
ans = 2 3 4 5 6
Can anyone help me?

 採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 3 月 1 日
編集済み: Azzi Abdelmalek 2013 年 3 月 1 日

0 投票

p='[Hello\]'
s={'[Hello]','(Hello)','[Hello]erz'}
r=regexp(s,p,'match')
r=r(cellfun(@(x) ~isempty(x),r))
out=cellfun(@(x) x{1}(2:end-1),r,'un',0)

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File Exchange で Characters and Strings についてさらに検索

製品

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by