文件 | |
file | partition.hpp |
字符串分割API。 | |
file | split.hpp |
file | split_re.hpp |
std::unique_ptr<table> cudf::strings::partition | ( | strings_column_view const & | input, |
string_scalar const & | delimiter = string_scalar("") , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
通过使用指定的定界符分割每个字符串,返回一个包含3列的集合。
输出列中的行数将与输入列相同。第一列将包含分割后每个字符串的第一个标记。第二列将包含定界符。第三列将包含每个字符串在定界符之后的剩余字符。
任何空字符串条目都返回相应的空输出列。
input | 此操作的字符串实例 |
delimiter | UTF-8 编码的字符串,指示在何处分割每个字符串。默认值为空字符串表示按空白分割。 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回表的设备内存的设备内存资源 |
std::unique_ptr<table> cudf::strings::rpartition | ( | strings_column_view const & | input, |
string_scalar const & | delimiter = string_scalar("") , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
通过使用指定的定界符从每个字符串的末尾开始分割每个字符串,返回一个包含3列的集合。
输出列中的行数将与输入列相同。第一列将包含在找到的最后一个定界符之前每个字符串的字符。第二列将包含定界符。第三列将包含每个字符串在定界符之后的剩余字符。
任何空字符串条目都返回相应的空输出列。
input | 此操作的字符串实例 |
delimiter | UTF-8 编码的字符串,指示在何处分割每个字符串。默认值为空字符串表示按空白分割。 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回表的设备内存的设备内存资源 |
std::unique_ptr<table> cudf::strings::rsplit | ( | strings_column_view const & | strings_column, |
string_scalar const & | delimiter = string_scalar("") , |
||
size_type | maxsplit = -1 , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
通过使用指定的定界符从每个字符串的末尾开始分割每个字符串,返回一个列列表。
输出列中的行数将与输入列相同。第一列将包含分割后在每个字符串中遇到的第一个标记。后续列包含下一个标记字符串。对于分割结果已耗尽的行,将添加空条目。总列数将等于在输入列中任何字符串上遇到的最大分割次数。
任何空字符串条目都返回相应的空输出列。
strings_column | 此操作的字符串实例 |
delimiter | UTF-8 编码的字符串,指示每个字符串中的分割点;默认空字符串表示按空白分割。 |
maxsplit | 要执行的最大分割次数;默认值 -1 表示对每个字符串执行所有可能的分割。 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回表的设备内存的设备内存资源 |
std::unique_ptr<table> cudf::strings::rsplit_re | ( | strings_column_view const & | input, |
regex_program const & | prog, | ||
size_type | maxsplit = -1 , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
使用regex_program的模式作为每个字符串的定界符,从字符串的末尾开始将字符串元素分割成字符串列的表。
每个元素生成一个字符串向量,这些向量存储在输出表的相应行中 – table[col,row] = string[row]
的token[col]
,其中token
是每个定界符之间的子字符串。
输出表中的行数将与输入列中的元素数量相同。生成的列数将是在任何输入行中找到的最大标记数。
分割通过从输入字符串的末尾开始遍历进行。使用pattern
识别字符串内的定界符,当达到maxsplit
或字符串的开头时停止分割。
空的输入字符串将在第一列的相应行中产生相应的空字符串。空行将在输出表中产生相应的空行。
regex_program的 regex_flags 被忽略。
cudf::logic_error | 如果pattern 为空。 |
input | 要分割的字符串元素列 |
prog | Regex program 实例 |
maxsplit | 要执行的最大分割次数。默认值 -1 表示对每个字符串执行所有可能的分割。 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回结果的设备内存的设备内存资源 |
std::unique_ptr<column> cudf::strings::rsplit_record | ( | strings_column_view const & | strings, |
string_scalar const & | delimiter = string_scalar("") , |
||
size_type | maxsplit = -1 , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
将单个字符串元素从每个字符串的末尾开始分割成字符串列表。
每个元素生成一个字符串数组,这些字符串存储在输出列表列中。
输出列中的元素数量将与输入列中的元素数量相同。每个独立的列表项将包含该行的新字符串。每行中字符串的数量可以从 0 到 maxsplit + 1
不等。
在每个字符串中从末尾到开头搜索delimiter
,当达到maxsplit
或字符串的开头时停止分割。
如果定界符不是空白且与另一个定界符相邻,则该分割处会产生一个空字符串。同样,如果非空白定界符出现在字符串的开头或末尾,则会产生一个空字符串。
请注意,对于默认的maxsplit
值,rsplit_record
和split_record
产生相同的结果。
空白定界符不会产生空字符串。
空字符串元素将导致该行的列表项为空。
cudf::logic_error | 如果delimiter 无效。 |
strings | 要分割的字符串元素列 |
delimiter | 用于识别每个字符串中分割点的字符串;默认空字符串表示按空白分割。 |
maxsplit | 要执行的最大分割次数;默认值 -1 表示对每个字符串执行所有可能的分割 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回结果的设备内存的设备内存资源 |
std::unique_ptr<column> cudf::strings::rsplit_record_re | ( | strings_column_view const & | input, |
regex_program const & | prog, | ||
size_type | maxsplit = -1 , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
使用给定的regex_program作为每个字符串的定界符,从字符串的末尾开始将字符串元素分割成字符串列表列。
每个元素生成一个字符串向量,这些向量存储在输出列表列中 – list[row] = [token1, token2, ...] found in input[row]
,其中token
是定界符之间的子字符串。
输出列中的元素数量将与输入列中的元素数量相同。每个独立的列表项将包含该行的新字符串。每行中字符串的数量可以从 0 到 maxsplit + 1
不等。
分割通过从输入字符串的末尾开始遍历进行。使用pattern
识别字符串内的分隔点,当达到maxsplit
或字符串的开头时停止分割。
空的输入字符串将产生相应的空列表项输出行。空行将产生相应的空输出行。
regex_program的 regex_flags 被忽略。
有关此 API 支持的模式的详细信息,请参阅Regex Features页面。
cudf::logic_error | 如果pattern 为空。 |
input | 要分割的字符串元素列 |
prog | Regex program 实例 |
maxsplit | 要执行的最大分割次数。默认值 -1 表示对每个字符串执行所有可能的分割。 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回结果的设备内存的设备内存资源 |
std::unique_ptr<table> cudf::strings::split | ( | strings_column_view const & | strings_column, |
string_scalar const & | delimiter = string_scalar("") , |
||
size_type | maxsplit = -1 , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
通过使用指定的定界符分割每个字符串,返回一个列列表。
输出列中的行数将与输入列相同。第一列将包含分割后每个字符串的第一个标记。后续列包含下一个标记字符串。对于分割结果已耗尽的行,将添加空条目。总列数将等于在输入列中任何字符串上遇到的最大分割次数。
任何空字符串条目都返回相应的空输出列。
strings_column | 此操作的字符串实例 |
delimiter | UTF-8 编码的字符串,指示每个字符串中的分割点;默认空字符串表示按空白分割。 |
maxsplit | 要执行的最大分割次数;默认值 -1 表示对每个字符串执行所有可能的分割。 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回表的设备内存的设备内存资源 |
std::unique_ptr<table> cudf::strings::split_re | ( | strings_column_view const & | input, |
regex_program const & | prog, | ||
size_type | maxsplit = -1 , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
使用regex_program的模式作为每个字符串的定界符,将字符串元素分割成字符串列的表。
每个元素生成一个字符串向量,这些向量存储在输出表的相应行中 – table[col,row] = strings[row]
的token[col]
,其中token
是定界符之间的子字符串。
输出表中的行数将与输入列中的元素数量相同。生成的列数将是在任何输入行中找到的最大标记数。
使用pattern
识别字符串内的定界符,当达到maxsplit
或字符串的末尾时停止分割。
空的输入字符串将在第一列的相应行中产生相应的空字符串。空行将在输出表中产生相应的空行。
regex_program的 regex_flags 被忽略。
cudf::logic_error | 如果pattern 为空。 |
input | 要分割的字符串元素列 |
prog | Regex program 实例 |
maxsplit | 要执行的最大分割次数。默认值 -1 表示对每个字符串执行所有可能的分割。 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回结果的设备内存的设备内存资源 |
std::unique_ptr<column> cudf::strings::split_record | ( | strings_column_view const & | strings, |
string_scalar const & | delimiter = string_scalar("") , |
||
size_type | maxsplit = -1 , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
将单个字符串元素分割成字符串列表。
每个元素生成一个字符串数组,这些字符串存储在输出列表列中。
输出列中的元素数量将与输入列中的元素数量相同。每个独立的列表项将包含该行的新字符串。每行中字符串的数量可以从 0 到 maxsplit + 1
不等。
在每个字符串中从头到尾搜索delimiter
,当达到maxsplit
或字符串的末尾时停止分割。
如果定界符不是空白且与另一个定界符相邻,则该分割处会产生一个空字符串。同样,如果非空白定界符出现在字符串的开头或末尾,则会产生一个空字符串。
空白定界符不会产生空字符串。
空字符串元素将导致该行的列表项为空。
cudf::logic_error | 如果delimiter 无效。 |
strings | 要分割的字符串元素列 |
delimiter | 用于识别每个字符串中分割点的字符串;默认空字符串表示按空白分割。 |
maxsplit | 要执行的最大分割次数;默认值 -1 表示对每个字符串执行所有可能的分割 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回结果的设备内存的设备内存资源 |
std::unique_ptr<column> cudf::strings::split_record_re | ( | strings_column_view const & | input, |
regex_program const & | prog, | ||
size_type | maxsplit = -1 , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
使用给定的regex_program作为每个字符串的定界符,将字符串元素分割成字符串列表列。
每个元素生成一个字符串数组,这些字符串存储在输出列表列中 – list[row] = [token1, token2, ...] found in input[row]
,其中token
是定界符之间的子字符串。
输出列中的元素数量将与输入列中的元素数量相同。每个独立的列表项将包含该行的新字符串。每行中字符串的数量可以从 0 到 maxsplit + 1
不等。
使用pattern
识别字符串内的定界符,当达到maxsplit
或字符串的末尾时停止分割。
空的输入字符串将产生相应的空列表项输出行。空行将产生相应的空输出行。
regex_program的 regex_flags 被忽略。
cudf::logic_error | 如果pattern 为空。 |
有关此 API 支持的模式的详细信息,请参阅Regex Features页面。
input | 要分割的字符串元素列 |
prog | Regex program 实例 |
maxsplit | 要执行的最大分割次数。默认值 -1 表示对每个字符串执行所有可能的分割。 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回结果的设备内存的设备内存资源 |