Borrar filtros
Borrar filtros

Limiting number of characters to three positions (ranging from 0–150)

1 visualización (últimos 30 días)
The code below limits number of characters to three positions ranging from 0 to 100.
if length(string) <= 1 || strcmp([string, char], '100')
string = [string, char];
end
However, if I try:
if length(string) <= 1 || strcmp([string, char], '150')
string = [string, char];
end
Number of characters are limited to two positions and range from 0 to 99.
If I try:
if length(string) <= 2 || strcmp([string, char], '150')
string = [string, char];
end
Number of characters are limited to three positions and range from 0 to 999.
I would like characters to be limited to three positions ranging from 0-150. Any suggestions? Thanks!

Respuesta aceptada

Walter Roberson
Walter Roberson el 9 de Feb. de 2020
Or in
(string(1)=='1' & string(2) <='4')
  4 comentarios
Lisa M
Lisa M el 16 de Feb. de 2020
Thanks your suggestion helped! The below line gives me numbers from 0 until 159 now. It somehow still does not limit the response to 150...
((length(string)<= 1 || string(1)=='1' && string(2)<='5') && (length(string)<= 2 || string(2)<='5' && string(3)=='0'))
Walter Roberson
Walter Roberson el 16 de Feb. de 2020
(isempty(string) && char ~= '0') || length(string) == 1 || (length(string) == 2 && string(1)=='1' && string(2) <='4') || strcmp([string, char], '150')
This code ignores leading 0 as well.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by