Special characters in regexp

4 views (last 30 days)
I have a large CSV data file which I process by: [num txt] = xlsread('file.csv') Some variables (in string format) stored in 'txt' have spaces and special characters; which I clear using 'regexprep'. But some of the variables have the 'caret - ^' character which cannot be replaced by this way.
Because of which I cannot designate these as variables and assign them the data.
Is there an alternate way of doing this?

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 28 Mar 2013
You can precede ^ with \
Example
str='abcd^ef';
new_str=regexprep(s,'\^','')

More Answers (1)

Walter Roberson
Walter Roberson on 28 Mar 2013
Use \^ to represent literal ^ . See also http://www.mathworks.com/help/matlab/ref/regexptranslate.html
But better yet is to code your expression so that it replaces everything other than specific characters.
regexprep( txt, '[^a-z0-9_]', '' ) %if you want to delete them
If you are looking to turn strings into variable names, you can use http://www.mathworks.com/help/matlab/ref/genvarname.html
But if you are planning to use them as variable names, them please read http://matlab.wikia.com/wiki/FAQ#How_can_I_create_variables_A1.2C_A2.2C....2CA10_in_a_loop.3F

Categories

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

Tags

Community Treasure Hunt

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

Start Hunting!