How do I ignore delimiter inside quotation marks using regexp?
4 views (last 30 days)
Show older comments
Kilian Brandt
on 4 Nov 2020
Commented: Ameer Hamza
on 6 Nov 2020
Hi everyone,
I'm writing a script to import data. The size (coloumns) of the data can vary. The main delimiter is a semicolon.
My data looks like the following:
Header ; Value ; Data
Example1; 12 ; "air"
Example2; 24 ; "water"
For this usecase I'm using
filebyfield = regexp(filebyline, ';', 'split'); %filebyline- textfile including my data
Unfortunately the data I try to import isn't uniform and could look like the following:
Header ; Value ; Data
Example1; 12 ; "air;fire"
Example2; 24 ; "water"
Is there any way to ignore the delimiter (";") if its inside of quotation marks? I thought about textscan, but I don't have the same number of coloumns every time and therefore cant specify the data format.
Any help would be appreciated! Best regards
0 Comments
Accepted Answer
Walter Roberson
on 4 Nov 2020
sometimes the easiest way is to detect the quoted delimiter and replace them with some special character such as ¡ and then do the split and then fix-up the results.
4 Comments
More Answers (0)
See Also
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!