【问题标题】:How can I Identify the Index of given string inside of another string in java? [duplicate]java - 如何在java中的另一个字符串中识别给定字符串的索引? [复制]
【发布时间】:2018-04-11 00:40:58
【问题描述】:

给定字符串 str1-“happy sunday”和字符串 str2-“sun”,我如何返回一个字符串,将 str1 中的所有字符都替换为“X”,但子字符串 s2 的出现除外?

所以这种情况下的输出返回值应该是字符串——“XXXXXXsunXXX”。

注意我不是想打印这个字符串,而是把它返回给一个方法。该方法有两个字符串参数 - str1 和 str2,并有一个字符串返回值,在本例中为 - XXXXXXsunXXX。

这是我到目前为止所拥有的。问题是我不知道如何识别 str1 中出现的索引 str2!一旦我知道子字符串在哪个索引处开始和结束,我就可以将 X 符号与子字符串连接起来。

public String blah(String str1, String str2) 
{
    int length = str1.length()-1;

    String z = "";

    if(!str1.contains(str2))
    {
        for(int i = 0; i <= length; i++)
        {
            z+= 'X';
        }
        return z;
    }
    else
    {
      ...
    }
}

【问题讨论】:

  • 那些不是这个问题的重复。这个问题正在寻找要保留的特定模式 - 不仅仅是字符。

标签: java string


【解决方案1】:

您可以使用str1.indexOf(str2); 来查找str1 中第一次出现的str2。返回值是 str1 的索引,如果未找到 str2,则返回 -1。 然后使用str1.indexOf(str2, lastIndex+str2.length) 查找第二个匹配项,依此类推。

【讨论】:

    猜你喜欢
    • 2013-04-14
    • 2013-05-07
    • 2011-06-15
    • 2012-03-05
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 2011-09-29
    • 1970-01-01
    相关资源
    最近更新 更多