How to extract strings with varied length by regular expression?
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
As the title, I'm trying to extract substrings from strings. But the substrings have different lengths. For example,
str1 = '2018_a_myid_the_here';
str2 = '2018_b_yourid_t_here';
What I want are 'myid' and 'yourid', which are of different length. So I used following code:
expression = '_(\w+)+_';
match = regexp(file_name, expression, 'match');
And I got the result as '_a_myid_the_' and '_b_yourid_t_'. Is there a better way to extract out 'myid' and 'yourid' directly without any further slicing?
Thank you!
0 Commenti
Risposta accettata
Stephen23
il 12 Gen 2018
Modificato: Stephen23
il 13 Gen 2018
>> regexp('2018_a_myid_the_here','(?<=^\d+_[a-z]_)[a-z]+','match')
ans =
'myid'
>> regexp('2018_b_yourid_t_here','(?<=^\d+_[a-z]_)[a-z]+','match')
ans =
'yourid'
For developing and experimenting with regular expressions you might like to download my Interactive Regular Expression tool:
Più risposte (0)
Vedere anche
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!