specific pattern from the file name

4 Ansichten (letzte 30 Tage)
ayman mounir
ayman mounir am 26 Jul. 2019
Bearbeitet: ayman mounir am 28 Jul. 2019
I want to extract the project number from the file name
example the file fame is: 'abcdd-22_Z12'
the project number should be Z12 for sure it is dynamic name could in the next file name Z11 for intance.
which expression I should use

Akzeptierte Antwort

per isakson
per isakson am 26 Jul. 2019
Bearbeitet: per isakson am 26 Jul. 2019
These statements
%%
chr = 'abcdd-22_Z12';
cac = regexp( chr, '(?<=_)Z\d{2}', 'match' );
cac{:}
return
ans =
'Z12'
This regex, '(?<=_)Z\d{2}', matches a literal "Z" followed by two digits, which is preceded by underscore.
  1 Kommentar
ayman mounir
ayman mounir am 27 Jul. 2019
Bearbeitet: ayman mounir am 28 Jul. 2019
Thanks It works perfectly

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 26 Jul. 2019
[~, basename, ext] = fileparts(FileName);
parts = strsplit(basename, '_');
project = parts{end};
In some cases this can be simplified: for example if the directory and extension are already removed from FileName then
project = regexp(FileName, '(?<=_).*', 'match');

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by