How to erase newline character from string?

Hello,
I am reading an xml file that contains new line (enter) character. How do I detect and erase it?
text=a.Olay(1)
text =
"YBasla
"
As you can see there is a new line character at the end of the string. Erase could not delete it this way:
erase(text,'↵')
ans =
"YBasla
"
Note that the string looks like this in a table
a =
6×5 table
(...) Olay (...) (...) (...)
_________________ ____________________________ ______________________ _________ __________
(...) "YBasla↵" (...) (...) (...)
I uploaded table and the text variable so that you can play with them.

2 Comments

erase(text,char(10))
Question though: is it possible that there are carriage returns as well as newline?
Alexander
Alexander on 18 Jun 2024
Edited: Alexander on 18 Jun 2024

Sign in to comment.

 Accepted Answer

strtrim(text)

3 Comments

Hello, thank you but new line character is not always at the end of beginning, sometimes there are a few in one string.
"...but new line character is not always at the end or beginning, sometimes there are a few in one string."
regexprep(text,'\n+','')
or if you want to include carriage return as well (if you use Windows):
regexprep(text,'[\n\r]+','')
When working with the replace function, you might need to use char(10) or newline rather than '\n+'
Example:
table.fieldname = replace(table.fieldname,char(10),' ')
or
table.fieldname = replace(table.fieldname,newline,' ')
Both answers yield the same result

Sign in to comment.

More Answers (0)

Categories

Tags

Asked:

on 12 Nov 2018

Edited:

on 18 Jun 2024

Community Treasure Hunt

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

Start Hunting!