Wenn Sie mit regulären Ausdrücken (regex) in R arbeiten und Sonderzeichen wie ^
, $
, .
, ?
, *
, |
, +
, (
, )
, [
, {
verwenden oder erkennen möchten, müssen Sie diese Zeichen “maskieren”. In den meisten regex-Engines wird dies durch das Voranstellen eines Backslashes (\
) erreicht.
In R gibt es jedoch eine Besonderheit: Der Backslash selbst ist in R ein Sonderzeichen. Daher, um einen echten Backslash in einem String zu verwenden, müssen Sie ihn doppelt eingeben: \\
. Daher müssen Sie in R zwei Backslashes verwenden, um die meisten regex-Sonderzeichen zu maskieren.
Hier sind einige Beispiele:
\\^
für das Zeichen^
\\$
für das Zeichen$
\\.
für das Zeichen.
\\?
für das Zeichen?
\\*
für das Zeichen*
\\|
für das Zeichen|
\\+
für das Zeichen+
\\(
für das Zeichen(
\\)
für das Zeichen)
\\[
für das Zeichen[
\\{
für das Zeichen{
Ein Anwendungsbeispiel in R:
text <- "Das ist ein Test-Text mit speziellen Zeichen wie ^, $ und *."
gefunden <- grep("\\^|\\$|\\*", text, value = TRUE)
print(gefunden)
Das obige Beispiel sucht nach den Zeichen ^
, $
oder *
im Text.
Zusammenfassend sollten Sie immer daran denken, die Sonderzeichen in regulären Ausdrücken in R mit doppelten Backslashes zu maskieren.