Octave 还提供了以下仿照标准 C 库函数设计的字符类测试函数。这些函数均对字符串数组进行运算,并返回由 0 和 1 组成的矩阵。非零元素表示字符串数组中相应字符的条件为真。例如:
isalpha ("!Q@WERT^Y&")
⇒ [ 0, 1, 0, 1, 1, 1, 1, 0, 1, 0 ]
tf = isalnum (s) ¶返回一个逻辑数组,其中 s 的元素为字母或数字时对应位置为 true,否则为 false。
这等价于 (isalpha (s) | isdigit (s))。
tf = isalpha (s) ¶返回一个逻辑数组,其中 s 的元素为字母时对应位置为 true,否则为 false。
这等价于 (islower (s) | isupper (s))。
另请参阅: isdigit, ispunct, isspace, iscntrl, isalnum, islower, isupper.
tf = isletter (s) ¶返回一个逻辑数组,其中 s 的元素为字母时对应位置为 true,否则为 false。
这是 isalpha 函数的别名。
tf = islower (s) ¶返回一个逻辑数组,其中 s 的元素为小写字母时对应位置为 true,否则为 false。
tf = isupper (s) ¶返回一个逻辑数组,其中 s 的元素为大写字母时对应位置为 true,否则为 false。
tf = isdigit (s) ¶返回一个逻辑数组,其中 s 的元素为十进制数字 (0-9) 时对应位置为 true,否则为 false。
另请参阅: isxdigit, isalpha, isletter, ispunct, isspace, iscntrl.
tf = ispunct (s) ¶返回一个逻辑数组,其中 s 的元素为标点符号时对应位置为 true,否则为 false。
tf = isspace (s) ¶返回一个逻辑数组,其中 s 的元素为空白字符(空格、换页符、换行符、回车符、制表符和垂直制表符)时对应位置为 true,否则为 false。
tf = iscntrl (s) ¶返回一个逻辑数组,其中 s 的元素为控制字符时对应位置为 true,否则为 false。
tf = isgraph (s) ¶返回一个逻辑数组,其中 s 的元素为可打印字符(空格除外)时对应位置为 true,否则为 false。
tf = isprint (s) ¶返回一个逻辑数组,其中 s 的元素为可打印字符(包括空格)时对应位置为 true,否则为 false。
tf = isascii (s) ¶返回一个逻辑数组,其中 s 的元素位于 ASCII 编码范围内时对应位置为 true,否则为 false。
tf = isstrprop (str, prop) ¶tf = isstrprop (str, prop, 'ForceCellOutput', flag) ¶测试字符串属性。
例如:
isstrprop ("abc123", "alpha")
⇒ [1, 1, 1, 0, 0, 0]
如果 str 是元胞数组,则 isstrprop 递归地应用于元胞数组的每个元素。
数值数组会被转换为字符串。
第二个参数 prop 必须是以下之一:
"alpha"对于字母字符为 true。
"alnum""alphanum"对于字母或数字字符为 true。
"lower"对于小写字母为 true。
"upper"对于大写字母为 true。
"digit"对于十进制数字 (0-9) 为 true。
"xdigit"对于十六进制数字 (a-fA-F0-9) 为 true。
"space""wspace"对于空白字符(空格、换页符、换行符、回车符、制表符、垂直制表符)为 true。
"punct"对于标点符号(可打印字符中除空格、字母和数字之外的字符)为 true。
"cntrl"对于控制字符为 true。
"graph""graphic"对于可打印字符(空格除外)为 true。
"print"对于可打印字符(包括空格)为 true。
"ascii"对于位于 ASCII 编码范围内的字符为 true。
如果指定了选项 'ForceCellOutput' 且 flag 为真,则返回元胞数组而非逻辑数组。
另请参阅: isalpha, isalnum, islower, isupper, isdigit, isxdigit, isspace, ispunct, iscntrl, isgraph, isprint, isascii.