Ich habe eine Spalte in einem Datenrahmen mit Adressen, die eine Zusammensetzung aus Einheit/Hausnummer, Straßenname, Ort, Postleitzahl und Telefonnummer sind.Regex zum Ersetzen von mindestens 5 Ziffern in einer Zeichenfolge
Die Postleitzahl ist eine vierstellige Nummer. Hier
ein Beispiel:
"26A JULIA STREET ANYTOWN 8523 71245632"
Ich möchte die Telefonnummern abzustreifen, aber die Postleitzahlen und andere Zahlen halten zurückzukehren:
"26A JULIA STREET ANYTOWN 8523"
Ich habe versucht, die folgenden:
str_replace(string=field_name$ADDRESS, pattern="\\d{5,}", replacement="")
Die Telefonnummern werden nicht entfernt. Kann jemand darauf hinweisen, wo ich falsch liege?
auch gsub nutzen könnten. 'gsub (" \\ s + \\ d {5,} "," ", mystring)' - mit Regex, um führenden Platz zu löschen. – Zach
Sie können auch alles erfassen, bis Sie die 4 Postleitzahlen gefunden haben. Verwenden Sie 'sub (" (. * \\ d {4}) "," \\ 1 ", Feldname $ ADDRESS)'. Dies funktioniert auch in Fällen, in denen keine Telefonnummern vorhanden sind. –
Ihr Code funktioniert gut mit dem 'data.frame' von ** hrbrmstr ** – user2100721