In addition to matrices, Matlab supports another very general and powerful data structure, the cell array. Kosuke Kitajima won the gold medal in the 100m breaststroke Str = sprintf( '%x',999) % display number in hexadecimal Str = sprintf( '%07.4f',pi) % display pi to 4 decimals, 7 chars in total, padded with zeros. fprintf( '\n %s won the %s medal in the %s \n for his time of %05.2f seconds.\n'. We can use escape characters like \n for a new line and \t for a tab. There are many formatting options Type doc sprintf for the full list. We use %s for a string, %d for a decimal digit, and %05.2f to indicate that we want a floating point number with 5 characters in total, two digits after the decimal point, and padded with zeros if necessary. These place holders define how these values will be formatted. We pass these functions a string that includes place holders, (denoted by % signs) which will be replaced by corresponding values listed after the string. The sprintf() and fprintf() functions can be used to format strings for output: sprintf() returns a string, while fprintf() directly displays the string, or writes it to a file, depending on the mode. C = strvcat( 'hello', 'this', 'is', 'a', 'test') %concatenate verticallyĭ = sortrows(C) % sort the rows alphabetically D =Į = strjust(C) % justify the char array E = If not, we can either use the blanks() function to pad with blanks or the strcat() and strvcat() functions to concatenate, adding blanks for us. If the size of the strings match, we can concatenate vertically and horizontally just like numeric matrices. Or, parse a number from a string with str2num() A = num2str() %Takes an optional formatting string - see Formatting Strings section We can also use the num2str() and mat2str() functions to generate string representations of numeric matrices. The num2xxx and xxx2num functions operate on signed numbers. We can convert from string representations of hexadecimal or binary numbers to decimal numbers and back using the dec2hex(), hex2dec(), dec2bin(), and bin2dec() functions. The char() and abs() functions convert from integers to the ascii equivalents and vice versa. str = ' a1!'Ī = isstrprop(str, 'punct') % punctuationī = isstrprop(str, 'alphanum') % alpha or numeric charactersĬ = isstrprop(str, 'digit') % decimal digitsĭ = isstrprop( '3A', 'xdigit') % valid hexadecimal digits str = The isstrprop() function can be used much like the isletter() or isspace() functions, allowing you to test which characters in a matrix belong to one of several different categories. K = deblank(A) % trim trailing blank spaces only. J = strtrim(A) % trim leading and trailing blank spaces. G = isspace(A(1:6)) % which characters are spaces? - returns a logical array A = ' This is Test String #1! 'ī = A(1:5) % extract the first 5 charactersĭ = repmat( % replicate char arrays, just like numeric onesĮ = 'z':-1: 'a' % create the matrices just like numeric ones.į = isletter(A(1:6)) % which characters are letters? - returns a logical array Strings in Matlab are actually character matrices, which can be manipulated in very similar ways to numeric matrices.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |