How can I replace a certain pattern in a string?

Hi! I'm trying to replace a certain pattern in a string using strrep. The original string is like 'abbabba', and I want to replace all 'abba' into 'aaaa'. The expected result is 'aaaaaaa' (7 'a's). I tried the following command:
strrep('abbabba','abba','aaaa')
ans =
'aaaaaaaa'
Note that the result has 8 'a's, while 7 'a's are expected. I wonder how can I get the desired result. Thanks so much!

 採用された回答

Voss
Voss 2023 年 3 月 16 日

0 投票

One way:
oldstr = 'abbabba';
oldp = 'abba';
newp = 'aaaa';
newstr = regexprep(regexprep(oldstr,oldp,newp),oldp,newp);

2 件のコメント

Tian
Tian 2023 年 3 月 16 日
It works! Thanks, Voss!
Voss
Voss 2023 年 3 月 16 日
You're welcome!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

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

製品

リリース

R2020a

タグ

質問済み:

2023 年 3 月 16 日

コメント済み:

2023 年 3 月 16 日

Community Treasure Hunt

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

Start Hunting!

Translated by