에 두 가지 특정 단어 사이에 단어의 문자열을 추출 : 당신은 "PRODUCT colgate good but not goodOKAY"
내가 다음 문자열 한 R
내가 PRODUCT
및 OKAY
에 두 가지 특정 단어 사이에 단어의 문자열을 추출 : 당신은 "PRODUCT colgate good but not goodOKAY"
내가 다음 문자열 한 R
내가 PRODUCT
및 OKAY
사이의 모든 단어를 추출 할을 사용할 수 있습니다 gsub
:
vec <- "PRODUCT colgate good but not goodOKAY"
gsub(".*PRODUCT\\s*|OKAY.*", "", vec)
# [1] "colgate good but not good"
x = "PRODUCT colgate good but not goodOKAY"
library(stringr)
str_extract(string = x, pattern = perl("(?<=PRODUCT).*(?=OKAY)"))
(?<=PRODUCT)
- 다음 내용의 내용은 PRODUCT
.*
은 줄 바꾸기를 제외한 모든 항목과 일치합니다.
(?=OKAY)
- 앞으로 OKAY
과 일치하도록주의하십시오.
기본 기능 sub
및 gsub
이 정상적으로 작동하려면이 패키지에 stingr
패키지가 필요하지 않습니다. 구문의 일관성을 위해 stringr을 사용합니다. 함수 이름을 추출, 바꾸기, 검색하는 등의 작업을 예측 가능하고 이해할 수 있으며 인수는 일관된 순서입니다. 나는 stringr
을 사용하기 때문에 매번 문서화가 필요하지 않습니다.
이는 sub
으로 수행 할 수 있습니다
s <- "PRODUCT colgate good but not goodOKAY"
sub(".*PRODUCT *(.*?) *OKAY.*", "\\1", s)
주는 :
[1] "colgate good but not good"
어떤 패키지가 필요하지 않습니다.
.*PRODUCT *(.*?) *OKAY.*
당신은 qdapRegex 패키지에서 rm_between
기능을 사용할 수 있습니다 여기에
x <- "PRODUCT colgate good but not goodOKAY"
library(qdapRegex)
rm_between(x, "PRODUCT", "OKAY", extract=TRUE)
## [[1]]
## [1] "colgate good but not good"