regex replace whole word

11 views (last 30 days)
Bardo
Bardo on 1 Jun 2018
Commented: Stephen23 on 1 Jun 2018
Hi,
How to change
'v1 = v1a;'
to
'v(1) = v1a;'
using regex or regexrep?
regexprep('v1 = v1a','\bv1\b','v(1)')
apparently does not work.

Accepted Answer

Stephen23
Stephen23 on 1 Jun 2018
Edited: Stephen23 on 1 Jun 2018
>> regexprep('v1 = v1a','^([a-z]+)(\d+)','$1($2)')
ans = v(1) = v1a
Hopefully you are not constructing arbitrary strings of code for evaluating!
  8 Comments
Bardo
Bardo on 1 Jun 2018
I reckon the main requested feature - to replace only whole words matching the string - is well in the title but got lost in the discussion.
Stephen23
Stephen23 on 1 Jun 2018
@Bardo: you should accept your answer, if it resolves your original question.

Sign in to comment.

More Answers (1)

Bardo
Bardo on 1 Jun 2018
Here we go:
>> regexprep('v1 = v1a','\<v1\>','v(1)')
ans =
v(1) = v1a
or as a strrep for whole words
function snew = subsname(s, old, new)
snew = regexprep(s,['\<', old,'\>'], new);

Categories

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

Tags

Products


Release

R2016a

Community Treasure Hunt

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

Start Hunting!