x <-
  c("Anna",
    "Berta Brigitte",
    "Carla-Klara",
    "Dana Dora Diana",
    "Emilia E",
    "F-Franziska",
    " Gabi",
    "Jana die Erste")regex03
regex
    textmining
    string
  Aufgabe
Gegeben sein ein String-Vektor, x. Dieser Vektor enthält Vornamen mehrerer Personen. Extrahieren Sie den ersten Vornamen jeder Person.
Hinweise:
- Orientieren Sie sich im Übrigen an den allgemeinen Hinweisen des Datenwerks.
 
 
 
 
 
 
 
 
 
Lösung
library(stringr)  # Teil von tidyvserse
library(purrr)Liest man alle Zeichen vom Typ w aus, so sind Bindestriche nicht enthalten:
str_match(x, "\\w+")     [,1]    
[1,] "Anna"  
[2,] "Berta" 
[3,] "Carla" 
[4,] "Dana"  
[5,] "Emilia"
[6,] "F"     
[7,] "Gabi"  
[8,] "Jana"  Daher macht es vermutlich mehr Sinn, umgekehrt zu sagen, was man nicht will, nämlich Leerzeichen, also s:
str_match(x, "[^\\s]+")     [,1]         
[1,] "Anna"       
[2,] "Berta"      
[3,] "Carla-Klara"
[4,] "Dana"       
[5,] "Emilia"     
[6,] "F-Franziska"
[7,] "Gabi"       
[8,] "Jana"       Die Ausgabe kann man noch vereinfachen, in dem wir aus der resultieren Matrix (Tabelle) die ersten Spalte auswählen:
[1] "Anna"        "Berta"       "Carla-Klara" "Dana"        "Emilia"     
[6] "F-Franziska" "Gabi"        "Jana"       Categories:
- regex
- textmining
- string