2017-05-03 1 views
-4

Ich habe eine Zeichenfolge, wo ich alle Leerzeichen ersetzen muss und "und" s mit "" oder "_". Mein Code funktioniert jedoch nicht.String.Replace und String.ReplaceAll Methoden funktioniert nicht für Leerzeichen

text = "working and travelling"; 
    text = text.replaceAll("and","_"); 
    text = text.trim(); 
    text = text.replace(" ",""); 
    text = text.replaceAll(" ", ""); 
    text = text.replaceAll("\n", ""); 
    text = text.replaceAll("\t", ""); 
    text = text.replaceAll("\\s+",""); 

Der Ausgang erzeugt "arbeitet _ Reisen"

fand ich die Lösung. Danke für Ihre Hilfe. Es gab einen Nicht-Pausenraum, den ich nicht sehen konnte. So ist die Arbeitsweise war

text = text.replaceAll("\\x0B",""); 
+0

Also ist die gewünschte Ausgabe "working_traveling"? Was bekommst du mit dem aktuellen Code? – Dummy

+0

Was ist Ihre erwartete Ausgabe? –

+0

Der Code, den Sie angezeigt haben, erzeugt diese Ausgabe nicht, zumindest nicht, wenn Sie 'text' ausgeben. Sie sollten Ihre erwartete und tatsächliche Ausgabe beschreiben. – pvg

Antwort

0
public class test { 
    public static void main(String [] args) { 
     String text = "working and travelling"; 
     text = text.replaceAll("and","_").replaceAll(" ",""); 

     System.out.println(text); 
    } 
} 

Ausgang wird "working_travelling"

0

zu ersetzen "and" durch einen Unterstrich, replace("and", "_").
Um ein vertikales Tabulatorzeichen zu löschen, geben Sie ein.
Löschen von Leerzeichen, replaceAll("\\s", "").

text = text.replace("and", "_").replace("\\x0B","").replaceAll("\\s", ""); 

Sie benötigen nur replaceAll, wenn Sie einen regulären Ausdruck verwenden. Der reguläre Ausdruck \\s entspricht einem beliebigen Leerzeichen.

Verwandte Themen