2017-03-21 6 views
0

Ich versuche, den vorderen Teil einiger Wörter in einem Satz zu bekommen. Zum Beispiel ist der Satz -Wie bekomme ich den vorderen Teil einiger Wörter in R?

x <- c("Ace Bayou Reannounces Recall of Bean Bag Chairs Due to Low Rate of Consumer Response; Two Child Deaths Previously Reported; Consumers Urged to Install Repair", "Panasonic Recalls Metal Cutter Saws Due to Laceration Hazard") 

Jetzt möchte ich den vorderen Teil des Rückrufs oder erinnert bekommen. Ich habe verschiedene Funktionen aus R wie grep, grepl, pmatch, str_split ausprobiert. Ich konnte jedoch nicht genau das bekommen, was ich möchte.

, was ich brauche, ist nur

"Ace Bayou Reannounces" 
"Panasonic" 

Jede Hilfe würde geschätzt.

+2

nur 'sapply (strsplit (x, 'Recall'), '[', 1)' wird – Sotos

Antwort

0

Wenn Sie reguläre Ausdrücke verwenden möchten.

gsub(pattern = "(.*(?=Recall(s*)))(.*)", replacement = "\\1", x = x, perl = T) 
+0

tun, wenn 'x = ("Schmuck Kinder Erinnerte von smilemakers Aufgrund von hohen Cadmium"," Ace Bayou Reannounces Recall von Bean Bag Chairs aufgrund der niedrigen Rate der Verbraucherreaktion, Zwei Kinder Todesfälle bereits gemeldet, Verbraucher aufgefordert, Reparatur zu installieren "," Panasonic Recalls Metall Cutter Sägen wegen Rissgefahr "), ich möchte den vorderen Teil der Rückruf erhalten oder Rückrufe oder hinter dem "Recalled by". Was ich brauche ist '" SmileMakers " " Ace Bayou Reannounces " " Panasonic "' –

Verwandte Themen