Das Zusammenfügen von Zeichenketten (Konkatenieren von Strings) ist eine Standard-Aufgabe in allen Programmiersprachen. Auch bei der Programmierung in R wird die Funktion benötigt, wenn man z.B. Text dynamisch erzeugen lassen, oder den Wert einer Variablen an einen Text anfügen möchte. Die Funktion, die diese Aufgabe in R übernimmt, ist meiner Meinung nach etwas außergewöhnlich benannt. Mit diesem Artikel möchte ich mich selbst daran erinnern, dass sie paste()
heißt.
Hier ein paar Beispiele, wie Zeichenketten (Strings) in verschiedenen Programmiersprachen zusammengefügt werden:
- R
-
Die Funktion, mit der in R Strings zusammengefügt werden, heißt
paste()
(vom englischen „paste“ für „zusammenkleben“). Beispiel:daten = c(1:10) plot(daten, main=paste("Plot von",length(daten),"Werten."))
Mit der Funktion
paste()
werden durch Kommata getrennte Werte zusammengefügt. Dabei wird jedesmal ein Leerzeichen eingefügt. Wenn man die Zeichenketten ohne Leerzeichen zusammenfügen möchte, kann man entweder den Parametersep=""
setzen, oder die Funktionpaste0()
verwenden:paste(sep="", "eins", "zwei") == paste0("eins", "zwei")
- Java
-
In Java können Zeichenketten mit dem
+
-Operator verkettet werden:String var = "eins"; var = var + "zwei" + "drei"; System.out.println(var);
oder mit dem
+=
-Operator:String text = "Anfang"; text += "Ende"; System.out.println(text);
Sollte man sehr häufig Strings zusammenfügen, so empfiehlt sich die Verwendung eines StringBuffer-Objektes mit der Methode
append()
(siehe auch ChuckAndWayne-Blog):StringBuffer b = new StringBuffer(); for (int i = 0; i<1000000; i++) { b.append("langer Text\n"); } System.out.println(b);
- bash
-
In der Bash können Variablen und Strings einfach direkt nacheinander geschrieben werden, um sie zusammenzufügen.
a="A" b=$a"b" echo $b c="${b}c" echo $c echo $c "Bei echo können" "Leerzeichen zwischen" "den Strings sein." d=$a$b echo $d
Die bash unterstützt auch den
+=
-Operator:c="Vorne" c+=Hinten echo $c
Für weitere Details siehe StackOverflow.
Um ganze Dateien zusammenzufügen, kann man den Befehl
cat
verwenden:echo -e "Zeile 1, Datei 1\nZeile 2, Datei 1" > datei1.txt echo -e "Zeile 1, Datei 2\nZeile 2, Datei 2" > datei2.txt cat datei1.txt datei2.txt
- PHP
-
In PHP können Strings mit Hilfe von
.
oder.=
zusammengefügt werden:<?php $text = "Mein Text "; $text .= "wird immer" . " " . "länger!"; echo $text; ?>
- JavaScript
-
In JavaScript können Strings, ähnlich wie in Java, mit Hilfe des
+
und des+=
-Operators aneinander gehängt werden:<script> var msg = "Nachricht"; msg += " wird"; msg = msg + " immer" + " länger"; alert(msg + "!"); </script>
- C#
-
In C# können Strings mit Hilfe der Funktionen
string.concat
andstring.join
zusammengefügt werden. Siehe dazu den Blog von Alex James Brown.
Ein Gedanke zu „Zeichenketten in R zusammenfügen“