How do I wrap text using the disp or display function?

56 次查看(过去 30 天)
When writing a string using the disp or display function, sometimes the text runs off the page, which is unhelpful when publishing. I tried breaking the string and using an ellipsis (...), then reintroducing the string on the next line, though this leads to an unexpected MATLAB error. This is especially frustrating when the string is saved inside of a variable that I'm trying to display.
Example of problem: disp('abcdefghijklmnop' ...
'qrstuvwxyz')
How can I avoid this problem?

回答(4 个)

Roger Stafford
Roger Stafford 2015-2-16
编辑:Roger Stafford 2015-2-16
I suggest using 'fprintf' instead of 'disp'. The "\n" symbol will give a new line.

Chad Greene
Chad Greene 2015-9-23
I wrote a function for this called wraptext.

Karol Ondrejkovic
Karol Ondrejkovic 2023-2-17
I found this solution in comments of Chad Green's wraptext function. Works well to me and I'm using it in livescript publishing.
Roberto Tron on 15 Aug 2018
The functionality can be easily and more efficiently implemented using string replacement with regular expression. E.g., to wrap text to 80 columns:
strWrapped=regexprep(str,'.{1,80}\s','$0\n');

Steven Lord
Steven Lord 2023-2-17
You could use the textwrap function to wrap the text manually.
a = "The quick brown fox jumped over the lazy dog";
b = textwrap(a, 40)
b = 2×1 cell array
{'The quick brown fox jumped over the '} {'lazy dog' }
strlength(b{1})
ans = 36
If you're writing this in code, you can either concatenate the text together and use an ellipsis inside the square brackets:
c = ['The quick brown fox jumped over the ', ...
'lazy dog']
c = 'The quick brown fox jumped over the lazy dog'
Or if you're using a string array use + at the end of the first line followed by an ellipsis.
c = "The quick brown fox jumped over the " + ...
"lazy dog"
c = "The quick brown fox jumped over the lazy dog"

类别

Help CenterFile Exchange 中查找有关 Entering Commands 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by