FINDSTRING (SSIS)

返回一个字符串的指定出现在字符表达式中的位置。返回结果是该出现的索引(索引从 1 开始)。字符串参数的取值必须为字符表达式,而 occurrence 参数的取值必须为整数。如果找不到字符串,则返回值是 0。如果字符串的出现次数少于所指定的 occurrence 参数,则返回值为 0。

语法

FINDSTRING(character_expression, searchstring, occurrence)

参数

  • character_expression
    是要在其中进行搜索的字符串。
  • searchstring
    是要搜索的字符串。
  • occurrence
    有符号或无符号的整数,用以指定要报告 searchstring 的匹配项。

结果类型

DT_I4

备注

FINDSTRING 只能处理 DT_WSTR 数据类型。如果 character_expressionsearchstring 参数是字符串文字或数据类型为 DT_STR 的数据列,则它们在 FINDSTRING 执行操作前隐式转换为 DT_WSTR 数据类型。其他数据类型必须显式转换为 DT_WSTR 数据类型。有关详细信息,请参阅 Integration Services 数据类型Cast (SSIS)

如果 character_expressionsearchstring 为空,则 FINDSTRING 返回空值。

occurrence 参数中使用值 1 将获得第一次出现的索引,使用 2 将获得第二次出现的索引,依此类推。

occurrence 必须为大于 0 的整数。

示例

此示例使用一个字符串文字。它返回值 11。

FINDSTRING("New York, NY, NY", "NY", 1) 

此示例使用一个字符串文字。由于字符串“NY”只出现两次,所以返回结果是 0。

FINDSTRING("New York, NY, NY", "NY", 3) 

此示例使用 Name 列。它返回 Name 列中值 n 的位置。返回结果因 Name 中值的不同而不同。如果 Name 包含 Anderson,则函数返回 8。

FINDSTRING(Name,"n", 2) 

此示例使用 NameSize 列。它返回 Name 列中 Size 值的最左侧字符的位置。返回结果因列值的不同而不同。如果 Name 包含 Mountain,500Red,42,且 Size 包含 42,则返回结果为 17。

FINDSTRING(Name,Size,1) 

请参阅

参考

REPLACE (SSIS)

其他资源

函数 (SSIS)

帮助和信息

获取 SQL Server 2005 帮助