-
Notifications
You must be signed in to change notification settings - Fork 4k
ARROW-12715: [C++][Python] Add SQL LIKE match kernel #10356
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
ianmcook
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks for doing this @lidavidm!
|
P.S. case insensitivity can be achieved by using one of the |
|
We could easily add a flag to toggle insensitivity in RE2 as well. (Would be better than allocating a new string and potentially dealing with Unicode.) |
|
But can |
|
No, but in that case we'd just not dispatch to that path. |
|
What to do about the options class might be awkward. You could subclass |
|
We could add it to |
|
Sounds good. The case-(in)sensitive option should be optional and should default to case-sensitive. We should error in cases where case-insensitive match is specified in the options but is ignored by a kernel or by any path in a kernel. This sounds to me like a separate PR. Should I open a Jira for that? |
|
I filed ARROW-12835. I think this PR should be otherwise good-to-go then, unless we need to also add R bindings. |
|
I think it's good to go. Nothing is needed in the R bindings. |
|
Merged, thanks for the review! |
Implements a simple SQL LIKE pattern match kernel by translating it to a regex (or substring) match as appropriate.