Ich habe einige Eingabe auf einer Webseite, die ich wieder anzeigen und an anderer Stelle einreichen. Das aktuelle Problem ist, dass ich alle einzigen Backslashes verdoppeln möchte, die zwischen Nicht-Backslash-Zeichen eingefügt sind, bevor Sie die Eingabe an anderer Stelle einreichen.Escape einzelnen Backslash zwischen nur Backslash-Zeichen
Test Zeichenfolge "domain\name\\nonSingle\\\WontBe\\\\Returned"
, ich möchte nur den ersten einzelnen Backslash, zwischen Domain und Name.
sollte diese Saite nichts bekommt "\\get\\\nothing\\\\"
Meine aktuellen Muster, dass ich am nächsten mit bekommen kann, ist [\w][\\](?!\\)
jedoch dies die "\n"
aus dem ersten Test-String erhalten wird ich aufgelistet haben. Ich würde gerne Lookbehind für die Regex verwenden, aber Javascript hat nicht so etwas für die Version, die ich benutze. Hier ist die Seite, die ich habe meine regexs testet auf http://www.regexpal.com/
Derzeit bin ich uneffizient diese regex [\w][\\](?!\\)
, um alle einzelnen Schrägstriche vor ihnen zwischen nicht-umgekehrten Schrägstrich Zeichen und das Zeichen eingeschlossen zu extrahieren (was ich nicht will) und dann ersetzen Sie es mit der gleichen Zeichenfolge und einem Backslash am Ende davon.
Zum Beispiel gegeben domain\name\\bl\\\ah
mein aktueller Regex [\w][\\]\(?!\\)
wird "n\"
zurückgeben. Dies führt dazu, dass mein Code einige zusätzliche Verarbeitungen durchführen muss, anstatt nur replace zu verwenden.
Ich interessiere mich nicht für jeden doppelten, dreifachen oder vierfachen Backslashes, sie können in Ruhe gelassen werden.
Was soll die Regex-Operation für 'Domäne \ Name \ vorhergehendeBackslashesUnwanted' zurückgeben? Dies ist für mich unklar – KevBot
Test Zeichenfolge "Domäne \ Name \\ vorherigeBackslashesUnwanted", ich möchte nur die einzige \ zwischen Domäne und Name erhalten. Der gewünschte Regex sollte nichts zurückgeben, wenn die Testzeichenfolge \\\\ get \\\\ nichts angegeben wird. Die nächste Regex, die ich habe, ist [\ w] [\\\] (?! \\\) (Ich habe Probleme mit der Flucht, aber es sollte nur zwei Backslashes in der mittleren eckigen Klammer und den runden Klammern geben) gibt das erste Zeichen vor einem einzelnen umgekehrten Schrägstrich zurück. regexpal.com – user1821961
Was willst du mit dem Spiel machen? Ersetzen Sie es durch etwas anderes? Teilen Sie die Zeichenfolge? Oder markieren Sie es für den Benutzer? –