Ich versuche, Text nach Schlüsselwörtern zu suchen und dann die Schlüsselwörter zurückzuziehen, die es findet.grep und gsub, um Muster zu finden und Muster zu rufen
jetzt ich/reproduzierbaren Beispiel bin:
text <- c("Here is some text about cats and dogs",
"Here is some text about turtles and chickens",
"Here is some text about rhinos and elephants")
pattern <- "cat|turtle"
HasPattern <- as.vector(NULL)
for(i in 1:length(text)){
if(sum(grepl(pattern, text[i], ignore.case = TRUE)>0))
HasPattern <- append(HasPattern, text[i])
}
Das gewünschte Ergebnis für diese Ausgabe wäre:
gsub(grepl(pattern, text), pattern, text) # or something
[1] cat turtle NA
Ich habe versucht -
for (i in 1:length(text)){
if(grepl(pattern, text[i]) == TRUE)
gsub(text[i], pattern, text[i])
}
sub(text, pattern, text)
gsub(grepl(pattern, text), pattern, text)
Im reproduzierbaren Beispiel: HasPattern gibt mir einen Vektor der Texte, die was ich will was haben ist toll. Aber ich möchte auch einen Vektor, welches Muster es in diesen Texten gefunden hat.
Ausgezeichnet danke! Ist str_extract case sensitive? –
@MattW. Sie können die Änderungen im Muster vornehmen, um die Groß-/Kleinschreibung zu ignorieren – akrun
Wie wird das normalerweise gemacht? "Katze | Katze" ist die einzige Weise, die ich weiß, aber ich habe eine große Liste für ein Muster. –