regexp with _ recognized as a letter

2 visualizaciones (últimos 30 días)
Luca cadalo
Luca cadalo el 7 de Abr. de 2017
Comentada: Guillaume el 7 de Abr. de 2017
when you use regexp regexp(Date, '(?<=Month=)\w+', 'match')
Date=Year2012_MonthMay_Day05
this character '_' is recognized as a letter??? so the information of the month can not be separated properly

Respuestas (1)

Walter Roberson
Walter Roberson el 7 de Abr. de 2017
\w does not match "letters"
"\w Any alphabetic, numeric, or underscore character. For English character sets, \w is equivalent to [a-zA-Z_0-9]"
If you want to match English letters then use [a-zA-Z]
  2 comentarios
Luca cadalo
Luca cadalo el 7 de Abr. de 2017
so, in that case, you can not use \w
Guillaume
Guillaume el 7 de Abr. de 2017
No you cannot use \w. It's trivial to replace it with something that would work. I assume
regexp(Date, '(?<=Month)[^_]+', 'match')
would probably work for you. Note that I've removed the = you had after Month since it would have failed to match your example string.

Iniciar sesión para comentar.

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by