Borrar filtros
Borrar filtros

Validate and get exact number of characters using the regular expression

20 visualizaciones (últimos 30 días)
Hi all,
I am using MATLAB R2016a version and working on a chacters set like
str = 'ENGINE-45'; % this is okay(digits are 2 after hyphen)
where i need to validate and get as numbers of digits after hyphen (-), it should be 2 digtits but in some case it is 3, 4, 5 number digits like
str = 'ACCCAT-455'; % this is not okay(3 digits)
str = 'VCCASNSRR-12344'; % this is not okay(5 digits)
I have used reguler expresion to get charcters and digits as
out_str = regexp(str, '[A-Z]+-[0-9]{2}', 'match');
ans =
'VCCASNSRR-12' % used {2} but where inputs are 5, tryiing to restrict this to only 2 char
but this is not what i required i need to get if and only 2 digits after hyphen?

Respuesta aceptada

J. Alex Lee
J. Alex Lee el 8 de Mzo. de 2020
Try
out_str = regexp(str, '[A-Z]+-[0-9]{2}$', 'match');
  9 comentarios
Stephen23
Stephen23 el 12 de Mzo. de 2020
Editada: Stephen23 el 12 de Mzo. de 2020
@J. Alex Lee: yes thank you, fixed now.
@Bhaskar R: use an anchor. It worked for me:
regexp(str, '^[A-Z]{6}-\d{5}-\d{2}$', 'match', 'once')
Bhaskar R
Bhaskar R el 12 de Mzo. de 2020
Yes sir, It worked perfectly
Thank you :-)

Iniciar sesión para comentar.

Más respuestas (1)

dpb
dpb el 8 de Mzo. de 2020
I can get you closer, but not exactly right...
regexp(s,'-\d{2}\>','match')
will return only matches of exactly two digits after the "-", but for those cases that do match, also returns the leading "-"
I'm not sure how to prevent that...I'm pretty lame at regular expressions.
  7 comentarios
dpb
dpb el 8 de Mzo. de 2020
Editada: dpb el 8 de Mzo. de 2020
My thinking for past 40 years! I like the quip about only aliens...am in full agreement! :)
Some people when confronted with a problem think "I know, I'll use regular expressions." Now they have two problems.
Bhaskar R
Bhaskar R el 9 de Mzo. de 2020
Thank for the for the response dpb, I have data varying with another string so I had to stick to use only reguler expressions only as of now.

Iniciar sesión para comentar.

Categorías

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

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by