5.3.1常用字符串操作

以下函数可用于执行常见的字符串操作。

 
: y = lower (s)
: y = tolower (s)

返回字符串或数组字符串的副本s,每个大写字符都替换为相应的小写字符;非字母字符保持不变。

例如

lower ("MiXeD cAsE 123")
    ⇒ "mixed case 123"

编程说明:tolower是的别名lower并且任一名称都可以在Octave中使用。

详见: upper.

广告
 
: y = upper (s)
: y = toupper (s)

返回字符串或数组字符串的副本s,每个小写字符替换为相应的大写字符;非字母字符保持不变。

例如

upper ("MiXeD cAsE 123")
    ⇒ "MIXED CASE 123"

编程说明:toupper是的别名upper并且任一名称都可以在Octave中使用。

详见: lower.

广告
 
: s = deblank (s)

从中删除尾部空白和nulls.

如果s是矩阵,deblank将每行修剪为最长字符串的长度。如果s是字符串的元胞数组,对每个字符串元素进行递归运算。

示例:

deblank ("    abc  ")
     ⇒  "    abc"

deblank ([" abc   "; "   def   "])
     ⇒  [" abc  " ; "   def"]

详见: strtrim.

广告
 
: s = strtrim (s)

从中删除前导和尾部空白s.

如果s是矩阵,strtrim将每一行修剪为最长字符串的长度。如果s是字符串的元胞数组,对每个字符串元素递归操作。

例如

strtrim ("    abc  ")
     ⇒  "abc"

strtrim ([" abc   "; "   def   "])
     ⇒  ["abc  "  ; "  def"]

详见: deblank.

广告
 
: s = strtrunc (s, n)

截断字符串s到长度n.

如果s是一个字符矩阵,然后调整列数。

如果s是字符串的元胞数组,然后对每个数组元素执行操作,并返回新的元胞数组。

广告
 
: str = untabify (t)
: str = untabify (t, tw)
: str = untabify (t, tw, deblank)

替换中的TAB字符t带有空格。

输入,t,可以是2-D字符数组,也可以是字符串的元胞数组。输出与输入是同一类。

参数卡宽度从指定tw,默认为8。

如果可选参数deblank如果为true,则空格将从字符数据的末尾删除。

下面的示例读取一个文件并写入同一文件的未拆分版本,去掉尾部空格。

fid = fopen ("tabbed_script.m");
text = char (fread (fid, "uchar")');
fclose (fid);
fid = fopen ("untabified_script.m", "w");
text = untabify (strsplit (text, "\n"), 8, true);
fprintf (fid, "%s\n", text{:});
fclose (fid);

详见: strjust, strsplit, deblank.

广告
 
: newstr = do_string_escapes (string)

转换中的转义序列string他们所代表的人物。

转义序列以前导反斜杠开头('\')后面跟着1-3个字符(例如。,"\n"=>换行符)。

详见: undo_string_escapes.

广告
 
: newstr = undo_string_escapes (string)

转换中的特殊字符string回到他们逃跑的状态。

例如,表达式

bell

将报警字符(control-g,ASCII代码7)的值指定给字符串变量bell。如果打印此字符串,系统将振铃(如果可能的话)。这通常是预期结果。但是,有时打印字符串的原始表示形式是有用的,其中特殊字符从其转义序列代替。例如

octave:13> undo_string_escapes (bell)
ans = \a

将不可打印的警告字符替换为其可打印的表示形式。

详见: do_string_escapes.

广告

版权所有 © 2024-2025 Octave中文网

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