how to center a string

4 visualizaciones (últimos 30 días)
Mitchie Teotico
Mitchie Teotico el 28 de Mzo. de 2020
Editada: Stephen23 el 28 de Mzo. de 2020
The goal of this question is to create a function named padLine which inputs a string (char, 1 × N) and a linewidth (integer, scalar). The function then pads the string with spaces (if N<linewidth) in an attempt to center the string the function should output the padded string (char,1xlinewidth).
for example
out=padline('2',9);
disp(out)
xxxx2xxxx
where x is a space

Respuesta aceptada

Peng Li
Peng Li el 28 de Mzo. de 2020
Editada: Stephen23 el 28 de Mzo. de 2020
function out = padline(c, n) if n > length(c) n2add = floor((n - c) / 2); out = [repmat(‘ ‘, 1, n2add) c repmat(‘ ‘, 1, n - length(c) - n2add)]; else out = c; end
typed using cell phone. You may need to replace the ‘ with the correct symbol. Try it.
You may also interested in pad function that works with strings. You can add space to both sides of a string (defined by “ instead of ‘) or a string array.

Más respuestas (1)

Stephen23
Stephen23 el 28 de Mzo. de 2020
str = '23';
num = 9;
tmp = (num-numel(str))/2;
out = sprintf('%*s%*s',fix(tmp)+numel(str),str,ceil(tmp),'')

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