5.3.2字符串连接

可以使用矩阵表示法连接字符串(详见, 字符数组)这通常是最自然的方法。例如

fullname=[fname“.txt”];电子邮件=[“<”user“@”domain“>”];

在每种情况下,都很容易看到最后的字符串会是什么样子。这种方法也是最有效的。当使用矩阵连接时,解析会立即开始连接字符串,而不必处理函数调用的开销和关联函数的输入验证。

这个换行符函数可用于连接字符串,使其在显示时显示为多行文本。

 
: c = newline

返回与换行符相对应的字符。

这相当于n.

示例代码

joined_string=[newline“line1”newline“line2”]⇒行1行2

详见: 字符串连接函数, strjoin, strsplit.

此外,还有其他几个用于连接字符串对象的函数,这些函数在特定情况下可能很有用:char,strvcat, 字符串连接函数cstract最后,可以使用通用连接函数:详见,霍斯卡特vertcat.

 
: C = char (A)
: C = char (A, …)
: C = char (str1, str2, …)
: C = char (cell_array)

从一个或多个数字矩阵、字符矩阵或元胞数组创建字符串数组。

参数是垂直连接的。返回的值根据需要用空格填充,以使字符串数组的每一行具有相同的长度。空的输入字符串意义重大,将在输出中连接。

对于数字输入,每个元素都转换为相应的ASCII字符。如果输入超出ASCII范围(0-255),则会返回范围错误。

对于元胞数组,每个元素都是单独连接的。元胞数组转换通过char大部分可以用转换returncellstr例如

char([97,98,99],“”,{“98”,“99”,100},“str1”,[“ha”,“lf”])⇒ [“abc”“”“98”“99”“d”“str1”“half”]

详见: strvcat, cellstr.

 
: C = strvcat (A)
: C = strvcat (A, …)
: C = strvcat (str1, str2, …)
: C = strvcat (cell_array)

从一个或多个数字矩阵、字符矩阵或元胞数组创建字符数组。

参数是垂直连接的。返回的值根据需要用空格填充,以使字符串数组的每一行具有相同的长度。不像char,空字符串将被删除,并且不会出现在输出中。

对于数字输入,每个元素都转换为相应的ASCII字符。如果输入超出ASCII范围(0-255),则会返回范围错误。

对于元胞数组,每个元素都是单独连接的。元胞数组转换通过strvcat大部分可以用转换returncellstr例如

strvcat([97,98,99],“”,{“98”,“99”,100},“str1”,[“ha”,“lf”])⇒ [“abc”“98”“99”“d”“str1”“half”]

详见: char, 字符串连接函数, cstract.

 
: str = strcat (s1, s2, …)

返回一个字符串,其中包含水平连接的所有参数。

如果自变量是单元字符串,字符串连接函数返回连接了各个数组的数组字符串。对于数字输入,每个元素都转换为相应的ASCII字符。在连接字符串之前,将消除任何字符串输入的尾随空白。请注意,数组字符串值会修剪空白。

例如

strcat(“|”,“保留前导空格”,“|”)⇒ | 保留了引导空间|
strcat(“|”,“尾部空格已消除”,“|”)⇒ |消除了拖尾空间|
strcat(“同构空间|”,“”,“|也被消除”)⇒ 齐次空间也被消除了
s=[“ab”;“cde”];strcat(s,s,s)⇒        “ababab”“cdecdecde
s={“ab”;“cd”};strcat(s,s,s)⇒        {[1,1]=ababab[2,1]=cd cd cd}

详见: cstract, char, strvcat.

 
: str = cstrcat (s1, s2, …)

返回一个字符串,其中包含所有水平连接的参数,并保留尾部空白。

例如

cstract(“ab”、“cd”)⇒ “ab cd
s=[“ab”;“cde”];cstract(s,s,s)⇒ “ab ab ab”“cdecdecde

详见: 字符串连接函数, char, strvcat.


版权所有 © 2024 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号