Wie man Objekte in regulären Ausdruck einbezieht

8
%Vor%

Es funktioniert nicht. Was soll ich mit [patternz] ersetzen, damit der reguläre Ausdruck mit dem Inhalt der Variable musterz übereinstimmt?

[edit] Beachten Sie, dass ich die Zeichenkette "03", nicht die Ziffern "0" und "3" getrennt anpassen möchte.

    
dmvianna 31.08.2012, 02:48
quelle

3 Antworten

10

Ich muss zugeben, dass ich kämpfen muss, um zu sehen, was das Problem hier ist. Für das Beispiel gab es nichts anderes als

%Vor%

ist erforderlich, da patternz ein Zeichenvektor ist und das Ziel nicht 0 & amp; 3 entspricht, sondern dem literalen "03" entspricht

Wenn dies nur am Ende der Strings benötigt wird, müssen wir "$" entweder manuell hinzufügen:

%Vor%

oder über eine Operation paste0()

%Vor%

Das Problem besteht darin, patternz als tatsächlichen Regexp zu verwenden, und die Basis-R-Funktionen behandeln dies perfekt.

    
Gavin Simpson 31.08.2012, 12:09
quelle
5

Sieht so aus, als müssten Sie einen Zeichenvektor für grepl() erstellen, wobei paste0() zu funktionieren scheint, obwohl es nicht so elegant ist:

%Vor%     
Chase 31.08.2012 02:53
quelle
4

package gsubfn ist dein Freund

%Vor%

Ursprünglich haben Sie angegeben, dass Sie eine 0 oder eine 3 am Ende der Zeichenfolge suchen möchten. In Ihrem Kommentar weisen Sie darauf hin, dass Sie in diesem Fall möglicherweise "03" zuordnen möchten.

%Vor%

wäre angemessener.

auch

%Vor%

ist in diesem Fall möglicherweise geeigneter, da $ doppelte Bedeutung hat.

    
shhhhimhuntingrabbits 31.08.2012 03:24
quelle

Tags und Links