Рубрики
Без рубрики

Java – Проверяет, содержит ли строка подстроку

– Java – Проверяет, содержит ли строка подстроку

В Java мы можем использовать String.contains() , чтобы проверить, содержит ли строка подстроку.

1.Строка.содержит() – чувствительный к регистру

package com.mkyong;

public class JavaExample1 {

    public static void main(String[] args) {

        String name = "mkyong is learning Java 123";

        System.out.println(name.contains("Java"));      // true
        System.out.println(name.contains("java"));      // false
        System.out.println(name.contains("MKYONG"));    // false
        System.out.println(name.contains("mkyong"));    // true

        if (name.contains("Java")) {
            System.out.println("Hello Java");
        } else {
            System.out.println("abc...");
        }
        
    }

}

Выход

true
false
false
true
Hello Java

2.Строка.содержит() – Игнорирование Дела

Идея состоит в том, чтобы преобразовать все строки и подстроки в нижний регистр, прежде чем проверять с помощью .contains()

package com.mkyong;

public class JavaExample2 {

    public static void main(String[] args) {

        String name = "mkyong is learning Java 123";

        System.out.println(containsIgnoreCase(name, "Java"));      // true
        System.out.println(containsIgnoreCase(name, "java"));      // true
        System.out.println(containsIgnoreCase(name, "MKYONG"));    // true
        System.out.println(containsIgnoreCase(name, "mkyong"));    // true

    }

    public static boolean containsIgnoreCase(String str, String subString) {
        return str.toLowerCase().contains(subString.toLowerCase());
    }

}

Выход

true
true
true
true

3. Индекс()

3.1 Просмотрите исходный код JDK String , содержит() использует indexOf() для внутренней проверки подстроки.

package java.lang;

	public boolean contains(CharSequence s) {
        return indexOf(s.toString()) >= 0;
    }

3.2 Таким образом, мы также можем проверить подстроку следующим образом:

package com.mkyong;

public class JavaExample3 {

    public static void main(String[] args) {

        String name = "mkyong is learning Java 123";

        if (name.indexOf("Java") != -1) {
            System.out.println("Hello Java"); // print this
        } else {
            System.out.println("abc...");
        }

    }

}

Выход

Hello Java

Рекомендации

Оригинал: “https://mkyong.com/java/java-check-if-a-string-contains-another-string/”