如何知道一个字符串是否属于另一个字符串,即使忽略字母也算在内

问题描述 投票:-1回答:2

我正在尝试编写程序以任何方式检查字符串是否在另一个字符串内?我的意思不是包含方法。诸如字符串“ AgBgC”包含字符串“ ABC”或诸如“ browndcodw”包含“棕色”和“牛”之类的东西]

java string
2个回答
0
投票

您可以执行以下操作,使用indexOf(int ch, int fromIndex)搜索下一个字符:

indexOf(int ch, int fromIndex)

Test

static boolean containsCharsInOrder(String text, String chars) {
    for (int idx = -1, i = 0; i < chars.length(); i++)
        if ((idx = text.indexOf(chars.charAt(i), idx + 1)) == -1)
            return false;
    return true;
}

输出

System.out.println(containsCharsInOrder("AgBgC", "ABC"));
System.out.println(containsCharsInOrder("browndcodw", "brown"));
System.out.println(containsCharsInOrder("browndcodw", "cow"));
System.out.println(containsCharsInOrder("browndcodw", "rod"));
System.out.println(containsCharsInOrder("browndcodw", "dog"));

0
投票

使用链接列表的简单解决方案:

true
true
true
true
false

基本上,如果第一个列表无法删除第二个列表中的字符,它将自动返回false。

© www.soinside.com 2019 - 2024. All rights reserved.