get char between two specified characters

2 ビュー (過去 30 日間)
Andreas
Andreas 2013 年 3 月 1 日
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 日
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 件)

カテゴリ

Help Center および File ExchangeCharacters and Strings についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by