MATLAB: Regexprep / doesnt work backwards

regexpregexprep

Hey Guys, I am using this code
Text = '<HTML><FONT color="0000FF">Used Amplification</FONT></HTML>' % from a listbox
Search = '</FONT></HTML> '
Add = '(hidden)</FONT></HTML> '
regexprep(Text,Search,Add)
to create this code
<HTML><FONT color="0000FF">Used Amplification(Hidden)</FONT></HTML>
Now I want to get back the old Code so i use regexprep(Text,Add,Search) but it doesnt work ?

Best Answer

You're not actually using regular expressions. Your search pattern is just a plain string, so you'd be better off using strrep.
The reason it doesn't work with Add as a search pattern is that the ( character has a special meaning in regexes so to match a bracket you need to escape it with a backslash, either manually or using regexptranslate:
regexprep(Text, regexptranslate('escape', Add), Search)
But as I said
strrep(Text, Add, Search)
would work just as well and will probably be faster.