Extrahieren Sie URLs mit Regex in eine neue Datenrahmenspalte

Ich möchte einen regulären Ausdruck verwenden, um alle URLs aus Text in einem Datenrahmen in eine neue Spalte zu extrahieren. Ich habe älteren Code, den ich zum Extrahieren von Schlüsselwörtern verwendet habe. Daher möchte ich den Code für einen regulären Ausdruck anpassen. Ich möchte einen regulären Ausdruck als String-Variable speichern und hier anwenden:

data$ContentURL <- apply(sapply(regex, grepl, data$Content, fixed=FALSE), 1, function(x) paste(selection[x], collapse=','))

Es scheint, dassfixed=FALSE sollte erzählengrepl das ist ein regulärer Ausdruck, aber R mag nicht, wie ich versuche, den regulären Ausdruck zu speichern als:

regex <- "http.*?1-\\d+,\\d+"

Meine Daten sind in einem Datenrahmen wie folgt organisiert:

data <- read.table(text='"Content"     "date"   
 1     "a house a home https://www.foo.com"     "12/31/2013"
 2     "cabin ideas https://www.example.com in the woods"     "5/4/2013"
 3     "motel is a hotel"   "1/4/2013"', header=TRUE)

Und würde hoffentlich so aussehen:

                                           Content       date              ContentURL
1               a house a home https://www.foo.com 12/31/2013     https://www.foo.com
2 cabin ideas https://www.example.com in the woods   5/4/2013 https://www.example.com
3                                 motel is a hotel   1/4/2013                        

Antworten auf die Frage(3)

Ihre Antwort auf die Frage