第十五章 ObjectScript - 字符串函数
字符串函数
ObjectScript 还具有一组广泛的函数来有效地使用字符串:
$EXTRACT使用字符计数返回或替换子字符串。$FIND按值查找子字符串并返回一个整数,指定其在字符串中的结束位置。$JUSTIFY返回右对齐的字符串,左侧用空格填充。$ZCONVERT将字符串从一种形式转换为另一种形式。它支持大小写转换(到大写、小写或标题大小写)和编码转换(在各种字符编码样式之间)。$TRANSLATE通过执行逐字符替换来修改给定字符串。$REPLACE在字符串中执行逐字符串替换并返回新字符串。$PIECE从字符分隔的字符串(通常称为分段字符串)返回子字符串。下面演示如何提取子字符串:
SET mystring="value 1^value 2^value 3"
WRITE $PIECE(mystring,"^",1)
$LENGTH返回指定字符串中的字符数或指定字符串中的分隔子字符串数,具体取决于所使用的参数。
SET mystring="value 1^value 2^value 3"
WRITE !, "Number of characters in this string: "
WRITE $LENGTH(mystring)
WRITE !, "Number of pieces in this string: "
WRITE $LENGTH(mystring,"^")
使用多维数组
可以使用以下函数来处理整个多维数组:
$ORDER允许顺序访问多维数组中的每个节点。$QUERY使能够访问数组中的每个节点和子节点,并在子节点上上下移动。
要使用数组中的单个节点,可以使用前面描述的任何函数。尤其:
$DATA可以指示给定节点是否存在以及给定节点是否有子节点。$GET获取给定节点的值,否则获取默认值。
Character Values
有时,当创建字符串时,需要包含无法键入的字符。对于这些,可以使用 $CHAR。
给定一个整数,$CHAR 返回相应的 ASCII 或 Unicode 字符。常见用途:
$CHAR(9)是一个制表符。$CHAR(10)是换行符。$CHAR(13)是回车符。$CHAR(13,10)是回车换行对。
函数 $ASCII 返回给定字符的 ASCII 值。