-
Notifications
You must be signed in to change notification settings - Fork 2
sf_start needs paranthesis #25
Copy link
Copy link
Open
Description
If I slightly modify the example code from ?sf_starts and use a slightly more complicated pattern, such as b|a, I expect to get matches for all strings starting by either a or b, hence TRUE for alpha and beta but FALSE for gamma and delta. What I get is this, however:
> x <- c("alpha", "beta", "gamma", "delta", "epsilon")
+ stringfish::sf_starts(x, "b|a")
[1] TRUE TRUE TRUE TRUE FALSELooking at the source code for the function I see:
> stringfish::sf_starts
function (subject, pattern, ...)
{
pattern <- paste0("^", pattern)
sf_grepl(subject, pattern, ...)
}Adding ^ to my pattern would yield ^b|a and will thus match any pattern either starting with b or which has a anywhere.
I would suggest chaning paste0("^", pattern) to paste0("^(", pattern, ")") which would (in my case) yield the more correct ^(b|a).
Similair for sf_ends.
P.S. Thank you very much for a wonderful package! It is really awsome! :-)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels