Special characters in regexp

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?

 채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2013년 3월 28일

0 개 추천

You can precede ^ with \
Example
str='abcd^ef';
new_str=regexprep(s,'\^','')

추가 답변 (1개)

Walter Roberson
Walter Roberson 2013년 3월 28일

0 개 추천

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

카테고리

도움말 센터File Exchange에서 Characters and Strings에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by