Regexp question number two

I have no idea why this isn't working. I've read in several places that this should work, but it doesn't. I have a string like:
str = 'Hello\nMy name is Lucas';
and I wanted to use regexp to split at the new line character, so I have the following:
results = regexp(str, '\n', 'split');
but it doesn't split the string and just returns the original string. I just upgraded to 2012b. Thanks.

 Risposta accettata

Daniel Shub
Daniel Shub il 19 Set 2012
You need to escape the `\`
results = regexp(str, '\\n', 'split')

1 Commento

To (hopefully) clarify: the "\n" in your string isn't actually a newline character -- it's just the two characters \ and n. So Daniel's solution is splitting on the literal combination of characters "\n".
If you had defined your string as
str = ['Hello',10,'My name is Lucas']
then the 6th character would actually be a line break and your regexp command would have worked.

Accedi per commentare.

Più risposte (0)

Categorie

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by