How to add text from name of .txt-file into string in a cell?

1 visualizzazione (ultimi 30 giorni)
Hi! I wonder if it is possible to add the name of a textfile for example: 200807.txt into strings in a cell that looks like this:
'METAR ESDF 010020Z AUTO 31003KT 230V350 9999NDV NCD 12/08 Q1017'
'METAR ESDF 010050Z AUTO 24003KT 230V320 9999NDV NCD 12/08 Q1017'
'METAR ESDF 010120Z AUTO 25003KT 230V350 9999NDV NCD 11/08 Q1017'
The strings exists in a .txt-file containing 45000 rows approximately that is imported with fread(). The only information about the year and month of the data is from the filename itself. The problem is that I would like to add the name of the file which contains the information about year and month to the part '010020Z'. That would provide a unique date and time to my strings that I could later use with datevec or datenum. Is there a way of doing this with matlab?
Thankful of your help!
  2 Commenti
Jim Hokanson
Jim Hokanson il 6 Ott 2016
It would be helpful to provide an example of what your output should look like.
Linus Dock
Linus Dock il 6 Ott 2016
It should look something like this:
'METAR ESDF 200807010120Z AUTO 25003KT 230V350 9999NDV NCD 11/08 Q1017'

Accedi per commentare.

Risposta accettata

Guillaume
Guillaume il 6 Ott 2016
regexprep(yourcellarray, 'd{6}Z', sprintf('%s$0', stringtoadd))
The above regular expression matches exactly 6 digits followed by Z and prepend that section with whichever string you want to add.
  1 Commento
Linus Dock
Linus Dock il 7 Ott 2016
Thank you! This is how it worked out.
flygplatsmetarYMDHM=cell(1,length(txtFiles))
filenamestr={txtFiles.name};
YYYYMM = regexprep(filenamestr, '.txt','')
for n=1:length(txtFiles)
flygplatsYYYYMM=Utcell{n};
yearmonth = YYYYMM{n}
flygplatsmetarYMDHM{n}=regexprep(flygplatsYYYYMM, '\d{6}Z', sprintf('%s$0', yearmonth))
end

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by