Prüfen, ob ein String einen Substring in Java enthält
- Prüfen, ob eine Zeichenkette eine TeilZeichenkette in Java enthält
-
Teilzeichenkette mit Hilfe der
indexOf()
Mehtod in Java finden - Teilzeichenkette mit Regex in Java finden
-
Unter-String mit
Apache
in Java finden - Teilzeichenkette mit Java Regex finden
Dieses Tutorial führt ein, wie man prüft, ob eine Zeichenkette eine TeilZeichenkette in Java enthält, und listet einige Beispielcodes zum Verständnis auf.
Prüfen, ob eine Zeichenkette eine TeilZeichenkette in Java enthält
Ein String, der Teil eines anderen Strings ist, wird als Teilstring für dieses String
-Objekt bezeichnet. Eine Zeichenkette ist eine Folge von Zeichen und ein unveränderliches Objekt in Java. Lassen Sie uns überprüfen, ob eine Teilzeichenkette in der gegebenen Zeichenkette existiert.
In diesem Beispiel verwenden wir die Methode contains()
der Klasse String
, die true
zurückgibt, wenn die Teilzeichenkette der Zeichenkette gefunden wird. Wir verwenden die Methode toLowerCase()
, um auf Groß-/Kleinschreibung zu prüfen.
public class SimpleTesting {
public static void main(String[] args) {
String str = "abracadaabra";
String subStr = "daa";
boolean containsStr = str.contains(subStr);
System.out.println(containsStr);
// Check with string ignore case
subStr = "Daa";
containsStr = str.toLowerCase().contains(subStr.toLowerCase());
System.out.println(containsStr);
subStr = "baa";
containsStr = str.toLowerCase().contains(subStr.toLowerCase());
System.out.println(containsStr);
}
}
Ausgabe:
true
true
false
Teilzeichenkette mit Hilfe der indexOf()
Mehtod in Java finden
Die Methode indexOf()
der Klasse String
wird benutzt, um den Index der Teilzeichenkette in einer Zeichenkette zu erhalten, aber wir können sie benutzen, um die Teilzeichenkette zu finden.
Hier prüfen wir, ob der Index der Teilzeichenkette größer oder gleich null ist, als es bedeutet, dass die Teilzeichenkette gefunden wurde. Wenn die Teilzeichenkette in der Zeichenkette nicht existiert, gibt sie -1
zurück.
Siehe das Beispiel und die Ausgabe.
public class SimpleTesting {
public static void main(String[] args) {
String str = "abracadaabra";
String subStr = "daa";
boolean containsStr = str.indexOf(subStr) >= 0;
System.out.println(containsStr);
// check with string ignore case
subStr = "DaA";
containsStr = str.toLowerCase().indexOf(subStr.toLowerCase()) >= 0;
System.out.println(containsStr);
subStr = "aaa";
containsStr = str.indexOf(subStr) >= 0;
System.out.println(containsStr);
}
}
Ausgabe:
true
true
false
Teilzeichenkette mit Regex in Java finden
Wir können auch die matches()
Methode des String
Objekts verwenden, die RegEx als Argument nimmt und entweder true
oder false
zurückgibt.
public class SimpleTesting {
public static void main(String[] args) {
String str = "abracadaabra";
String subStr = "daa";
boolean containsStr = str.matches("(?i).*" + subStr + ".*");
System.out.println(containsStr);
subStr = "daa";
containsStr = str.matches("(?i).*" + subStr + ".*");
System.out.println(containsStr);
}
}
Ausgabe:
true
true
Unter-String mit Apache
in Java finden
Wenn Sie die Apache
Commons-Bibliothek verwenden, dann können Sie die containsIgnoreCase()
Methode der StringUtils
-Klasse verwenden, die true
zurückgibt, wenn die Teilzeichenkette gefunden wird, andernfalls false
. Siehe das Beispiel unten.
import org.apache.commons.lang3.StringUtils;
public class SimpleTesting {
public static void main(String[] args) {
String str = "abracadaabra";
String subStr = "daa";
boolean containsStr = StringUtils.containsIgnoreCase(str, subStr);
System.out.println(containsStr);
subStr = "DAa";
containsStr = StringUtils.containsIgnoreCase(str, subStr);
System.out.println(containsStr);
subStr = "AcWF";
containsStr = StringUtils.containsIgnoreCase(str, subStr);
System.out.println(containsStr);
}
}
Ausgabe:
true
true
false
Teilzeichenkette mit Java Regex finden
Java stellt ein regex
-Paket zur Verfügung, das mehrere Klassen und Methoden enthält. Eine dieser Klassen ist eine Pattern
-Klasse, die einige Methoden wie compile()
, quote()
, matcher()
, etc. zur Verfügung stellt. Hier werden wir diese Methoden verwenden, um Teilzeichenketten zu finden.
import java.util.regex.Pattern;
public class SimpleTesting {
public static void main(String[] args) {
String str = "abracadaabra";
String subStr = "daa";
boolean containsStr =
Pattern.compile(Pattern.quote(subStr), Pattern.CASE_INSENSITIVE).matcher(str).find();
System.out.println(containsStr);
subStr = "RaCA";
containsStr =
Pattern.compile(Pattern.quote(subStr), Pattern.CASE_INSENSITIVE).matcher(str).find();
System.out.println(containsStr);
}
}
Ausgabe:
true
true
Verwandter Artikel - Java String
- So führen Sie die Konvertierung von String in String-Array in Java durch
- Wie entferne ich eine Unterzeichenkette aus einer Zeichenkette in Java
- So konvertieren Sie Byte-Array in Hex-String in Java
- Wie man Java-String in Byte konvertiert
- Generieren Sie eine zufällige Zeichenkette in Java
- Die Swap-Methode in Java