2016-10-20 4 views
-3

Gibt es eine Möglichkeit zu überprüfen, ob eine spezifische Zeichenfolge Klein-/Großbuchstaben enthält?Prüfen, ob eine bestimmte Zeichenfolge Klein-/Großbuchstaben enthält

z.B:

String myStr = "test"; 
if (myStr.contains("test") { // I would like this condition to 
           check the spell of "test", weather it is 
           written like "Test" or "teSt" etc... 
//Do stuff 
} 

Mit dieser Syntax, es funktioniert nur für die exakt gleiche Zeichenfolge. Wie könnte ich meine Bedingung für eine Form von "Test" machen, wie: "Test", "Test", "Test" usw.?

Antwort

1

Sie können die Methode equalsIgnoreCase() verwenden. Diese Methode vergleicht zwei String mit dem Ignorieren des Falls.

String a = "Test"; 

if("test".equalsIgnoreCase(a)) //returns true 
{ 
    //do stuff 
} 
+0

Warum negative Abstimmung? Bitte erkläre. – dpaksoni

0

die Heuhaufen Kraft (die Zeichenfolge, in der Sie suchen) Fall zu senken und dann für den Kleinadel suchen (die Zeichenfolge Sie suchen)

myStr.toLowerCase().contains("test") 
-1

Sie einen regulären Ausdruck wie diese Diesen [a-z]+ können überprüfen wenn es einen Kleinbuchstaben von az

Pattern p = Pattern.compile("[a-z]+"); 
Matcher m = p.matcher("tEST"); 
if(m.matches()) { 
// string contains lowercase 
} 
0

Wie wäre die Umwandlung myStr Fall zu senken und nach überprüfen. Beispiel:

String myStr = "test"; 
if (myStr.toLowerCase().contains("test") { 
     //Do stuff 
} 
-1

Lösung:

String name1="test"; 

System.out.println(name1.toLowerCase().equals(name1)); //true 
System.out.println(name1.toUpperCase().equals(name1)); //false 

Die Logik ist , wenn die erste Aussage wahr ist, bedeutet es die Zeichenfolge nur Kleinbuchstaben hat. Wenn die zweite Anweisung wahr ist, bedeutet dies, dass die Zeichenfolge nur Großbuchstaben hat. Wenn beide falsch sind, bedeutet dies, dass es eine Mischung aus beidem hat.

+0

Könnten Sie so freundlich sein, die negative Abstimmung zu erklären? – User27854

+0

Es war nicht von mir, aber ich denke, es hat etwas damit zu tun, 'equals' zu benutzen. –

+0

Das OP möchte eine case-insensitive compare/contains (es ist nicht klar), nicht nur feststellen, ob die Zeichenfolge gemischt ist. –

0

Sie können diese Regex verwenden, um zu überprüfen, ob eine Zeichenfolge Großbuchstaben enthält.

String regex = ".*[A-Z].*"; 
if (myStr.matches(regex)) { 
    // Write your code here 
} 
Verwandte Themen