文件 | 函数
搜索

文件

文件  strings/contains.hpp
 用于正则表达式 contains, count, matches, like 的字符串 API。
 
文件  findall.hpp
 

函数

std::unique_ptr< columncudf::strings::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 对象匹配的行。 更多...
 
std::unique_ptr< columncudf::strings::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 对象匹配,但仅在字符串开头匹配的行。 更多...
 
std::unique_ptr< columncudf::strings::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 的模式在每个字符串中匹配的次数。 更多...
 
std::unique_ptr< columncudf::strings::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 模式匹配的行。 更多...
 
std::unique_ptr< columncudf::strings::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 模式匹配的行。 更多...
 
std::unique_ptr< columncudf::strings::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 模式匹配的每个出现项。 更多...
 
std::unique_ptr< columncudf::strings::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())
 返回输入列每行中给定模式的第一个匹配项的起始字符索引。 更多...
 

详细描述

函数文档

◆ contains_re()

std::unique_ptr<column> cudf::strings::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 对象匹配的行。

示例
s = ["abc", "123", "def456"]
p = regex_program::create("\\d+")
r = contains_re(s, p)
r 现在是 [false, true, true]

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

有关此 API 支持的模式的详细信息,请参阅正则表达式特性页面。

参数
input此操作的字符串实例
prog正则表达式程序实例
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
每个字符串的布尔结果新列

◆ count_re()

std::unique_ptr<column> cudf::strings::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 的模式在每个字符串中匹配的次数。

示例
s = ["abc", "123", "def45"]
p = regex_program::create("\\d")
r = count_re(s, p)
r 现在是 [0, 3, 2]

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

有关此 API 支持的模式的详细信息,请参阅正则表达式特性页面。

参数
input此操作的字符串实例
prog正则表达式程序实例
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
每个字符串的匹配计数新列

◆ find_re()

std::unique_ptr<column> cudf::strings::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() 
)

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

示例
s = ["bunny", "rabbit", "hare", "dog"]
p = regex_program::create("[be]")
r = find_re(s, p)
r 现在是 [0, 2, 3, -1]

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

有关此 API 支持的模式的详细信息,请参阅正则表达式特性页面。

参数
input此操作的字符串实例
prog正则表达式程序实例
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
新的整数列

◆ findall()

std::unique_ptr<column> cudf::strings::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 模式匹配的每个出现项。

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

示例
s = ["bunny", "rabbit", "hare", "dog"]
p = regex_program::create("[ab]")
r = findall(s, p)
r 现在是一个列表列,例如
[ ["b"]
["a","b","b"]
["a"]
[] ]

如果相应的输入行为空,则返回一个空输出行。

有关此 API 支持的模式的详细信息,请参阅正则表达式特性页面。

参数
input此操作的字符串实例
prog正则表达式程序实例
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
新的字符串列表列

◆ like() [1/2]

std::unique_ptr<column> cudf::strings::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 个通配符特殊字符

  • % 零个或多个任意字符
  • _ 任意单个字符
示例
s = ["azaa", "ababaabba", "aaxa"]
r = like(s, "%a_aa%")
r 现在是 [1, 1, 0]
r = like(s, "a__a")
r 现在是 [1, 0, 1]

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

示例
s = ["abc_def", "abc1def", "abc_"]
r = like(s, "abc/_d%", "/")
r 现在是 [1, 0, 0]

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

异常
cudf::logic_error如果 patternescape_character 无效
参数
input此操作的字符串实例
pattern在每个字符串中匹配的 Like 模式
escape_character可选字符指定转义前缀。默认为无转义字符。
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
新的布尔列

◆ like() [2/2]

std::unique_ptr<column> cudf::strings::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 个通配符特殊字符

  • % 零个或多个任意字符
  • _ 任意单个字符
示例
s = ["azaa", "ababaabba", "aaxa"]
p = ["%a", "b%", "__x_"]
r = like(s, p)
r 现在是 [1, 0, 1]

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

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

异常
cudf::logic_error如果 patterns 包含空值或 escape_character 无效
cudf::logic_error如果 patterns.size() != input.size()
参数
input此操作的字符串实例
patterns在每个相应字符串中匹配的 Like 模式
escape_character可选字符指定转义前缀。默认为无转义字符。
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
新的布尔列

◆ matches_re()

std::unique_ptr<column> cudf::strings::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 对象匹配,但仅在字符串开头匹配的行。

示例
s = ["abc", "123", "def456"]
p = regex_program::create("\\d+")
r = matches_re(s, p)
r 现在是 [false, true, false]

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

有关此 API 支持的模式的详细信息,请参阅正则表达式特性页面。

参数
input此操作的字符串实例
prog正则表达式程序实例
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
每个字符串的布尔结果新列