replace_re.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019-2024, NVIDIA CORPORATION.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #pragma once
17 
18 #include <cudf/column/column.hpp>
19 #include <cudf/scalar/scalar.hpp>
20 #include <cudf/strings/regex/flags.hpp>
22 
24 #include <rmm/resource_ref.hpp>
25 
26 #include <optional>
27 
28 namespace CUDF_EXPORT cudf {
29 namespace strings {
30 
31 struct regex_program;
32 
57 std::unique_ptr<column> replace_re(
58  strings_column_view const& input,
59  regex_program const& prog,
60  string_scalar const& replacement = string_scalar(""),
61  std::optional<size_type> max_replace_count = std::nullopt,
64 
81 std::unique_ptr<column> replace_re(
82  strings_column_view const& input,
83  std::vector<std::string> const& patterns,
84  strings_column_view const& replacements,
85  regex_flags const flags = regex_flags::DEFAULT,
88 
107 std::unique_ptr<column> replace_with_backrefs(
108  strings_column_view const& input,
109  regex_program const& prog,
110  std::string_view replacement,
113 
114 } // namespace strings
115 } // namespace CUDF_EXPORT cudf
An owning class to represent a string in device memory.
Definition: scalar.hpp:431
Given a column-view of strings type, an instance of this class provides a wrapper on this compound co...
Class definition for cudf::column.
rmm::cuda_stream_view const get_default_stream()
Get the current default stream.
cuda::mr::async_resource_ref< cuda::mr::device_accessible > device_async_resource_ref
device_memory_resource * get_current_device_resource()
regex_flags
Regex flags.
Definition: flags.hpp:37
@ DEFAULT
default
Definition: flags.hpp:38
std::unique_ptr< column > replace_re(strings_column_view const &input, std::vector< std::string > const &patterns, strings_column_view const &replacements, regex_flags const flags=regex_flags::DEFAULT, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=rmm::mr::get_current_device_resource())
For each string, replaces any character sequence matching the given patterns with the corresponding s...
std::unique_ptr< column > replace_with_backrefs(strings_column_view const &input, regex_program const &prog, std::string_view replacement, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=rmm::mr::get_current_device_resource())
For each string, replaces any character sequence matching the given regex using the replacement templ...
cuDF interfaces
Definition: aggregation.hpp:35
Class definitions for cudf::scalar.
Class definition for cudf::strings_column_view.
Regex program class.