字符串包含#

group strings_contains

函数

std::unique_ptr<column> contains_re(strings_column_view const &input, regex_program const &prog, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回一个布尔列,用于标识与给定regex_program对象匹配的行。

Example:
s = ["abc", "123", "def456"]
p = regex_program::create("\\d+")
r = contains_re(s, p)
r is now [false, true, true]

任何空字符串条目返回相应的空输出列条目。

有关此API支持的模式详情,请参见Regex Features页面。

Parameters:
  • input – 此操作的字符串实例

  • prog – 正则表达式程序实例

  • stream – 用于设备内存操作和内核启动的CUDA流

  • mr – 用于分配返回列的设备内存的设备内存资源

Returns:

每个字符串的布尔结果新列

std::unique_ptr<column> matches_re(strings_column_view const &input, regex_program const &prog, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回一个布尔列,用于标识与给定regex_program对象匹配的行,但仅在字符串的开头匹配。

Example:
s = ["abc", "123", "def456"]
p = regex_program::create("\\d+")
r = matches_re(s, p)
r is now [false, true, false]

任何空字符串条目返回相应的空输出列条目。

有关此API支持的模式详情,请参见Regex Features页面。

Parameters:
  • input – 此操作的字符串实例

  • prog – 正则表达式程序实例

  • stream – 用于设备内存操作和内核启动的CUDA流

  • mr – 用于分配返回列的设备内存的设备内存资源

Returns:

每个字符串的布尔结果新列

std::unique_ptr<column> count_re(strings_column_view const &input, regex_program const &prog, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回给定regex_program的模式在每个字符串中匹配的次数。

Example:
s = ["abc", "123", "def45"]
p = regex_program::create("\\d")
r = count_re(s, p)
r is now [0, 3, 2]

任何空字符串条目返回相应的空输出列条目。

有关此API支持的模式详情,请参见Regex Features页面。

Parameters:
  • input – 此操作的字符串实例

  • prog – 正则表达式程序实例

  • stream – 用于设备内存操作和内核启动的CUDA流

  • mr – 用于分配返回列的设备内存的设备内存资源

Returns:

每个字符串的匹配计数的新列

std::unique_ptr<column> like(strings_column_view const &input, string_scalar const &pattern, string_scalar const &escape_character = string_scalar(""), rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回一个布尔列,用于标识与给定like模式匹配的行。

like 模式仅期望2个通配符特殊字符:

  • % 零个或多个任意字符

  • _ 任意单个字符

Example:
s = ["azaa", "ababaabba", "aaxa"]
r = like(s, "%a_aa%")
r is now [1, 1, 0]
r = like(s, "a__a")
r is now [1, 0, 1]

指定一个转义字符以在搜索中包含%_escape_character应为0或1个字符。如果指定了多个字符,则仅使用第一个字符。

Example:
s = ["abc_def", "abc1def", "abc_"]
r = like(s, "abc/_d%", "/")
r is now [1, 0, 0]

任何空字符串条目返回相应的空输出列条目。

Throws:

cudf::logic_error – 如果 patternescape_character 无效

Parameters:
  • input – 此操作的字符串实例

  • pattern – 用于匹配每个字符串中的相似模式

  • escape_character – 可选的字符,用于指定转义前缀。默认情况下没有转义字符。

  • stream – 用于设备内存操作和内核启动的CUDA流

  • mr – 用于分配返回列的设备内存的设备内存资源

Returns:

新的布尔列

std::unique_ptr<column> like(strings_column_view const &input, strings_column_view const &patterns, string_scalar const &escape_character = string_scalar(""), rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回一个布尔列,用于标识与给定模式中相应like模式匹配的行。

like 模式仅期望2个通配符特殊字符:

  • % 零个或多个任意字符

  • _ 任意单个字符

Example:
s = ["azaa", "ababaabba", "aaxa"]
p = ["%a", "b%", "__x_"]
r = like(s, p)
r is now [1, 0, 1]

指定一个转义字符以在搜索中包含%_escape_character应为0或1个字符。如果指定了多个字符,则仅使用第一个字符。转义字符适用于所有模式。

任何空字符串条目返回相应的空输出列条目。

Throws:
Parameters:
  • input – 此操作的字符串实例

  • patterns – 类似于在每个对应字符串中匹配的模式

  • escape_character – 可选的字符,用于指定转义前缀。默认情况下没有转义字符。

  • stream – 用于设备内存操作和内核启动的CUDA流

  • mr – 用于分配返回列的设备内存的设备内存资源

Returns:

新的布尔列

std::unique_ptr<column> findall(strings_column_view const &input, regex_program const &prog, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回一个字符串列表列,其中包含每个字符串中使用regex_program模式匹配到的每个匹配项。

每个输出行包括相应输入行中与给定模式匹配的所有子字符串。如果未找到匹配项,则输出行为空。

Example:
s = ["bunny", "rabbit", "hare", "dog"]
p = regex_program::create("[ab]")
r = findall(s, p)
r is now a lists column like:
 [ ["b"]
   ["a","b","b"]
   ["a"]
   [] ]

如果相应的输入行为空,则会出现空输出行。

有关此API支持的模式详情,请参见Regex Features页面。

Parameters:
  • input – 此操作的字符串实例

  • prog – 正则表达式程序实例

  • stream – 用于设备内存操作和内核启动的CUDA流

  • mr – 用于分配返回列的设备内存的设备内存资源

Returns:

新的字符串列表列

std::unique_ptr<column> find_re(strings_column_view const &input, regex_program const &prog, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回输入列中每行给定模式的第一个匹配项的起始字符索引。

Example:
s = ["bunny", "rabbit", "hare", "dog"]
p = regex_program::create("[be]")
r = find_re(s, p)
r is now [0, 2, 3, -1]

如果对应的输入行为空,则会出现空输出行。对于不包含匹配项的行,返回-1。

有关此API支持的模式详情,请参见Regex Features页面。

Parameters:
  • input – 此操作的字符串实例

  • prog – 正则表达式程序实例

  • stream – 用于设备内存操作和内核启动的CUDA流

  • mr – 用于分配返回列的设备内存的设备内存资源

Returns:

新的整数列