2017-03-06 4 views
-3

Ich bin neu in Java.Drucken ohne Anführungszeichen in Java mit Scanner

I-Code verwendet folgende Eingabe

Class Test 
{ 
    public static void main(String arg[]) 
    { 
     Scanner in=new Scanner(System.in); 
     String s=in.nextLine(); 
     System.out.println(s); 
     in.close(); 
    } 
} 

Wenn Benutzer von Benutzer zu erhalten betritt:

"HI" 

würde ich als drucken möchten:

HI 

(ohne Anführungszeichen) Bitte Hilfe ...

+4

Hinweis: 'replaceAll' Methode. –

+0

Ihr '' s'' Objekt hat Methoden ... – f1sh

+1

@ sᴜʀᴇsʜᴀᴛᴛᴀ Hinweis: schlagen Sie nicht vor Regex zu verwenden wenn nicht notwendig. Ersetzen ist hier mehr als in Ordnung. – Tom

Antwort

0

können Sie String x = s.replaceAll("\"", ""); verwenden, um doppelte Anführungszeichen zu entfernen.

+2

'String.replace' ist möglicherweise besser als' replaceAll', da das erste Argument nicht als regulärer Ausdruck betrachtet wird. – SantiBailors

0

Wenn Sie eine Lösung mit String.replace* verwenden, werden Sie alle doppelten Anführungszeichen ersetzen, auch wenn sie nicht die ersten und letzten Zeichen sind.

Wenn Sie sicherstellen möchten, nur die Vorder- und Hinter doppelte Anführungszeichen zu entfernen, können Sie sicherstellen, dass sie da sind und sie dann entfernen:

if (original.startsWith("\"") && original.endsWith("\"")) { 

    String newString = original.substring(1, original.length() - 1); 
}