当前位置:首页 > 英文周记 > 正文内容

包含extract函数的词条

更新时间:2026-07-18 10:32:45 周记网3年前 (2023-04-13)英文周记119

extractmid函数的作用

mid函数的作用是从指定位置开始提取指定数量的数据。

MID函数表示按照指定的条件对字符串进行截取。语法结构:=MID(目标单元格,开始位置,截取长度)注意:该函数的提取方法是从左往右提取指定的数据。

mid函数是extract中非常好用的函数,可以帮助我们轻松获取某个单元格中的部分数据。

包含extract函数的词条

第十四章 Caché 函数大全 $EXTRACT 函数

按位置从字符串中提取子字符串,或按位置替换子字符串。

$EXTRACT 通过字符串计数(从字符串的开头或字符串的结尾)识别字符串中的子字符串。子字符串可以是单个字符或字符范围。

$EXTRACT 可以以两种方式使用:

$EXTRACT 按字符串中的字符位置返回子字符串。该子字符串提取的性质取决于使用的参数。

以下示例从字符串“ ABCD ”中提取单个字母:

标识子字符串的目标字符串。

当使用 $EXTRACT 返回子字符串时,字符串可以是用引号引起来的字符串文字,规范的数字,变量,对象属性或任何求值为字符串或数字的有效ObjectScript表达式。如果将空字符串( “” )指定为目标字符串,则 $EXTRACT 始终返回该空字符串,而不考虑其他参数值。

当 $EXTRACT 与等号左侧的 SET 一起使用以替换子字符串时,string可以是变量名或多维属性引用;它不能是非多维对象属性。

from参数可以指定单个字符或字符范围的开头。

如果from整数值大于字符串中的字符数,则 $EXTRACT 返回空字符串。使用从 * -n 的值,如果 n 等于或大于字符串中的字符数,则 $EXTRACT 返回空字符串。如果from值为0或负数,则 $EXTRACT 返回空字符串;但是,如果将from与to一起使用,则from值0或负数将被视为1值。

如果将from与to参数一起使用,则from标识要提取的范围的开始,并且必须小于to的值。如果从等于等于,则 $EXTRACT 返回指定位置的单个字符。如果from大于to,则 $EXTRACT 返回一个空字符串。如果与to参数一起使用,则from值小于1(零或负数)将被视为数字1。

to参数必须与from参数一起使用。它必须是正整数, * (星号)或 * -n (星号后跟负整数)。如果to值是大于或等于from值的整数,则 $EXTRACT 返回指定的子字符串。如果to值为星号,则 $EXTRACT 返回子字符串,该子字符串以from字符开始,直至字符串的末尾。如果to是大于字符串长度的整数,则 $EXTRACT 还将返回子字符串,该子字符串以from字符开始,直到字符串的末尾。

如果from和to位置相同,则 $EXTRACT 返回单个字符。如果to位置比from位置更接近字符串的开头,则 $EXTRACT 返回空字符串。

如果省略to参数,则仅返回一个字符。如果指定了from,则 $EXTRACT 返回由from标识的字符。如果同时省略了to和from,则 $EXTRACT 返回字符串的第一个字符。

仅适用于 SET $EXTRACT 语法—如果to为 * + n , SET $EXTRACT 会在字符串的末尾附加偏移量的字符范围,并根据需要用空格填充。如果from表示字符串末尾的字符位置,则 SET $EXTRACT 将附加字符。如果from表示字符串末尾之前的字符位置,则 SET $EXTRACT 可以替换和附加字符。

使用变量指定 * -n 或 * + n 时,必须始终在参数本身中指定星号和符号字符。

以下是 * -n 的有效格式:

以下是 * +n 的有效格式:

这些参数值内允许使用空格。

以下示例返回“ D ”,即字符串中的第四个字符:

以下示例返回“ K ”,即字符串中的最后一个字符:

在下面的示例中,所有 $EXTRACT 函数都将“ J ”返回字符串中的倒数第二个字符:

请注意,星号和整数变量之间需要减号或加号。

下面的示例显示当from值为“ 1 ”时,一参数格式等效于二参数格式。 $EXTRACT 函数都返回“ H ”。

下面的示例返回一个子字符串“ THIS IS ”,它由第一到第七个字符组成。

以下示例还返回子字符串“ THIS IS ”。当from变量的值小于1时, $EXTRACT 将该值视为1。因此,以下示例返回由第一到第七个字符组成的子字符串。

下面的示例返回字符串的最后四个字符:

以下示例还返回字符串的最后四个字符:

下面的示例从对象属性中提取一个子字符串:

可以将 $EXTRACT 与 SET 命令一起使用,以另一个值替换指定的字符或字符范围。也可以使用它在字符串末尾附加字符。

当 $EXTRACT 与等号左侧的 SET 一起使用时,字符串可以是有效的变量名。如果该变量不存在,则 SET $EXTRACT 对其进行定义。字符串参数也可以是多维属性引用。它不能是非多维对象属性。尝试在非多维对象属性上使用 SET$EXTRACT 会导致 Object Dispatch 错误。

如果函数使用相对偏移量语法: * 表示字符串末尾,而 *-n 或 *+n 表示相对于字符串末尾的相对偏移量,则不能将 set(a,b,c,...)=Value 语法与等号左侧的 $EXTRACT(或$PICEL或$LIST) 一起使用。必须改用 set a=value、b=value、c=value、... 。语法。

SET $EXTRACT 的最简单形式是一对一替换:

通过将to指定为比字符串长度大1的正整数,或将to指定为 *+1 ,可以将字符附加到字符串,如下例所示:

如果指定大于字符串加1的值,则 $EXTRACT 填充空格为空白:

还可以提取一个字符串,并将其替换为其他长度的字符串。例如,以下命令从 foo 中提取字符串“ Rhode Island ”,并将其替换为字符串“ Texas ”,而无需填充。

可以提取字符串并将其设置为空字符串,然后从字符串中删除提取的字符:

如果指定从大于到,则不会发生替换:

在下面的示例中,假定变量 x 不存在。

SET 命令创建变量 x 并为其分配值“ ABCD ”。

SET $EXTRACT 将根据需要使用空格填充前导填充,但不执行尾部填充。下面的示例在字符串末尾的第六个位置插入值“ F ”,但在位置7和8处不插入其他字符:

下面的示例在第六个位置插入值“ F ”,并添加超出指定范围的字符:

下面的示例通过将from提取到大于替换字符串中的值数目的范围来缩短字符串。

在第三个位置插入值“ Z ”,并删除位置4、5和6。变量x现在包含值“ ABZGH ”,长度为5。

$EXTRACT 函数对字符而不是字节进行操作。因此,Unicode字符串的处理方式与ASCII字符串相同,如以下示例所示,将Unicode字符用作“ pi ”( $ CHAR(960) ):

$EXTRACT 无法识别代理对。代理对用于表示某些中文字符并支持日语JIS2004标准。可以使用 $WISWIDE 函数确定字符串是否包含代理对。 $WEXTRACT 函数可以识别并正确解析代理对。 $EXTRACT 和 $EXTRACT 相同。但是,由于 $EXTRACT 通常比 $WEXTRACT 快,因此对于不可能遇到代理对的所有情况, $EXTRACT 是更可取的。

在DTM和DTM-J模式下, $EXTRACT 支持两个附加参数,如下所示:

可选的replace参数用replace子字符串替换from和to指定的子字符串,并返回结果。原始字符串不变。

可选的pad参数指定填充字符。当from参数指定一个超出字符串末尾的位置时,将使用此选项。返回的字符串将填充到from所指定的位置,后跟replace子字符串。填充值可以是任何单个字符;非数字字符必须用引号引起来。要将引号字符指定为填充字符文字,请将其加倍。

可以使用 %SYSTEM.Process 类的 LanguageMode() 方法来设置DTM模式(2)或DTM-J模式(7)。

以下示例显示了四参数替换语法:

以下示例使用四参数语法附加替换字符串:

以下示例显示了五参数填充和替换语法:

注意:使用四参数或五参数语法时, $EXTRACT from和to参数不支持星号语法。 SET $EXTRACT 不能与四参数或五参数语法一起使用。

$EXTRACT 通过从字符串开头计数字符来确定子字符串。 $EXTRACT 将任何普通字符串作为输入。 $PIECE 和 $LIST都 可用于特殊准备的字符串。

$PIECE 通过计算字符串中用户定义的定界符来确定子字符串。

$LIST 通过从列表的开头计数元素(而非字符)来确定编码列表中的元素。 $LIST 不能用于普通字符串,而 $EXTRACT 不能用于编码列表。

proe函数extract是什么意思

extract( ) 提取字符串

用法:extract(string,position,length)

| | |

原字符串 提取位 提取字符数

例:

new=extraecl("abcded",2,3)==new="bcd".

其含义是: 从"abcdef"串的第2个字符(b)开始取出3个字符.

标签: extract函数

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。