how to center a string

조회 수: 6 (최근 30일)
Mitchie Teotico
Mitchie Teotico 2020년 3월 28일
편집: Stephen23 2020년 3월 28일
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

채택된 답변

Peng Li
Peng Li 2020년 3월 28일
편집: Stephen23 2020년 3월 28일
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.

추가 답변 (1개)

Stephen23
Stephen23 2020년 3월 28일
str = '23';
num = 9;
tmp = (num-numel(str))/2;
out = sprintf('%*s%*s',fix(tmp)+numel(str),str,ceil(tmp),'')

카테고리

Help CenterFile Exchange에서 Characters and Strings에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by