regexprep - may the replacement string contain a variable?

3 ビュー (過去 30 日間)
Alexander
Alexander 2012 年 12 月 13 日
My problem:
Assume you have the following string: str='WBEi xx(i,BE)'; I want to replace BE by QQ, but only in the second substring xx(i,BE).
The problem is that QQ is stored in a variable, say q='QQ'.
If I would take the function strrep(str, 'BE', q) both occurances of BE are replaced by QQ: ans = 'WQQi xx(i,QQ)'
If I realize it with regexprep (explicitely using 'QQ'): regexprep(str, '(xx\(i,)BE(\))', '$1QQ$2' ) the result is the right one: ans = 'WBEi xx(i,QQ)' %only the second is replaced
But is it somehow possible to parse the variable q='QQ' to this or a similiar function, to do the job?
Thanks!

採用された回答

Matt Fig
Matt Fig 2012 年 12 月 13 日
Does this work?
regexprep(str, '(xx\(i,)BE(\))', ['$1',q,'$2'] )

その他の回答 (1 件)

Alexander
Alexander 2012 年 12 月 13 日
That's it. Many thanks.
Alex

カテゴリ

Find more on Characters and Strings in Help Center and File Exchange

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by