2016-07-19 9 views
-2

Ich bin neu bei Nodejs.
Kann mir jemand sagen, wie man alle '\' zu '/' ersetzt? Vielen Dank.
So ersetzen Sie alle '' zu '/' in Nodejs

mein Code: console.log(process.cwd());
Ergebnis: e:\Workspace\WebStorm\Ren\LittleCase

ich die folgenden Methoden versucht:

console.log(process.cwd().replace('\\','/')); 

jedoch nur der erste replaced.like dies erfolgreich zu sein:

e:/Workspace\WebStorm\Ren\LittleCase 

Antwort

6

Sie sind ganz in der Nähe!

Das Problem ist, dass Javascript nicht mehr als einmal übereinstimmt. Aber mach dir keine Sorgen! Sie können eine RegExp verwenden!

Um eine Regex zu erstellen, ersetzen Sie die Anführungszeichen einfach durch Backslashes: /\\/. Das wird übereinstimmen \

Leider wird das nur einmal übereinstimmen, so können Sie die globale Flagge g an das Ende hinzufügen: /\\/g.

Also, mit Ihrem Beispiel, das wäre:

console.log(process.cwd().replace(/\\/g,'/')); 
+0

OK Dank für Sie! – BERARM

0

Sie müssen eine Regexp verwenden, um mehrere zu ersetzen Auftreten

.replace(/\\/g,'/') 
1

Ersetzen ersetzt nur die erste Instanz; Wenn Sie jedoch einen regulären Ausdruck mit einem globalen Modifikator verwenden, werden alle Instanzen ersetzt.

var regex = /\\/g; 
process.cwd().replace(regex, '/'); 

Es gibt einige andere, aber weniger orthodox (das heißt weniger lesbar auf zukünftige Programmierer) Methoden: https://stackoverflow.com/a/17606289/703229

Verwandte Themen