F: Wie kann ich Unterstriche "_" durch Backslash-Unterstriche "_" in einer R-Zeichenfolge ersetzen? Ich würde lieber das stringr
Paket verwenden.Ersetzen von Unterstrich "_" durch Backslash-Unterstrich " _" in einer R-Zeichenfolge
Kann auch jeder erklären, warum Zeile 5 unten nicht zum gewünschten Ergebnis führt? Ich war mir fast sicher, dass das funktionieren würde.
library(stringr)
s <- "foo_bar_baz"
str_replace_all(s, "_", 5) # [1] "foo5bar5baz"
str_replace_all(s, "_", "\_") # Error: '\_' is an unrecognized escape in character string starting ""\_"
str_replace_all(s, "_", "\\_") # [1] "foo_bar_baz"
str_replace_all(s, "_", "\\\_") # Error: '\_' is an unrecognized escape in character string starting ""\\\_"
str_replace_all(s, "_", "\\\\_") # [1] "foo\\_bar\\_baz"
Kontext: Ich mache eine LaTeX-Tabelle mit xtable
und muss meine Spaltennamen sanieren, da sie alle Unterstrichen haben und LaTeX brechen.
'str_replace_all (s," _ "," \\\\ _ ") # [1]" foo \\ _ bar \\ _ baz "' ist genau das, was Sie wollen, da '\\' einen literalen Backslash darstellen. (Sie müssen den Unterschied zwischen einer Zeichenfolge und der Art, wie sie dargestellt wird, verstehen). –
Sie haben Recht. Es funktioniert. Immer noch verwirrend für mich. Aber es funktioniert. Thx für den Zeiger. – lowndrul
In diesem Fall, upvote mein Kommentar, ich mag Leute, die meine Kommentare upvote, aber ich mag Bären, Dachse, Hasen, Ponys und Einhörner auch. Vögel sind meine Freunde .... wie Delfine. –