Partial string matching using patterns
r, regex
Solution
The `grep` function supports regular expressions and with regular expressions, you can match almost anything
y<- c("I am looking for a dog", "looking for a new dog", "a dog", "I am just looking")
grep("looking.*dog",y, value=T)
# [1] "I am looking for a dog" "looking for a new dog"
Here this pattern looks for `looking` then "maybe something" then `dog`. So that should do what you want.
Problem
I need to write a query in R to match partial string in column names. I am looking for something similar to LIKE operator in SQL. For e.g, if I know beginning, middle or end part of the string I would write the query in format: ``` LIKE 'beginning%middle%' ``` in SQL and it would return matching strings. In `pmatch` or `grep` it seems I can only specify 'beginning' , 'end' and not the order. Is there any similar function in R that I am looking for? For example, say I am looking in the vector: ``` y <- c("I am looking for a dog", "looking for a new dog", "a dog", "I am just looking") ``` Let's say I want to write a query which picks `"looking for a new dog"` and I know start of the string is `"looking"` and end of string is `"dog"`. If I do a `grep("dog",y)` it will return `1,2,3`. Is there any way I can specify beginning and end in `grep`?