当前位置: 首页 > 面试题库 >

Java indexOf方法可用于字符串中的多个匹配项

陆昂然
2023-03-14
问题内容

我对indexOf方法有疑问。我想在字符串中找到多个“ X”的情况。

假设我的字符串是“ x是x是x是x”,我想在其所有索引位置中找到x。但是,如何在多种情况下执行此操作?使用indexOf甚至可能吗?

我做了int temp = str.indexOf(’x’);
它找到第一个x。我试图做一个for循环,在此循环中我被初始化为字符串的长度,但是由于我不断发现第一个x,所以这没有用。

for (int y = temp1; y >= 0;y-- ) 
{
    int temp = str.indexOf('x');
    System.out.println(temp);
}

但这是行不通的。我应该使用正则表达式吗?因为我真的不知道如何使用正则表达式方法。

任何帮助将不胜感激,谢谢!


问题答案:

indexOf方法还有第二种变体,它以起始索引为参数。

i = str.indexOf('x');
while(i >= 0) {
     System.out.println(i);
     i = str.indexOf('x', i+1);
}


 类似资料:
  • 问题 你想要匹配两个或多个字符串。 解决方案 计算把一个字符串转换成另一个字符串所需的编辑距离或操作数。 levenshtein = (str1, str2) -> l1 = str1.length l2 = str2.length prevDist = [0..l2] nextDist = [0..l2] for i in [1..l1] by 1

  • 我想知道是否可以使用并在RegEx中设置多个组,然后将所有匹配的组存储在变量中以供以后使用。 像这样: 这实际上不起作用,但这正是我想要的,我知道我可以将分析字符串封装在一个变量中,但这似乎很愚蠢,因为对于每个我必须处理正则表达式的组,效率不是很高,我应该能够处理正则表达式一次,并存储所有组以供以后使用。 有什么想法吗?

  • 我能不能把下面两个案例合并成一个子句,因为它们都做同样的事情? 此外,如果我想使用匹配,

  • 我研究了一段时间,还没有找到匹配以下模式的线索(不过,我对regex也很陌生),它看起来像 或 所以我想将上面的字符串匹配并捕获为/abc/foo/bar。现在,“/stop”是一个可选字符串,可以附加在模式的末尾。目标是获得所需的捕获,同时忽略“stop”(如果“stop”存在多次,则在第一个“stop”处停止),同时允许在中间设置尽可能多的斜线(行尾的斜线除外)。 但它与以下任何项都不匹配:

  • 本文向大家介绍使用django的objects.filter()方法匹配多个关键字的方法,包括了使用django的objects.filter()方法匹配多个关键字的方法的使用技巧和注意事项,需要的朋友参考一下 介绍: 今天在使用django的时候忽然想用到,如何匹配多个关键字的操作,我们知道django有一个objects.filter()方法,我们可以通过如下一句代码实现匹配数据库中title

  • 本文向大家介绍Python中的DI字符串匹配,包括了Python中的DI字符串匹配的使用技巧和注意事项,需要的朋友参考一下 假设我们有一个仅包含“ I”(表示增加)或“ D”(表示减少)的字符串S,令N = S的大小。我们必须返回[0,1,... ,N]使得对于范围0,...,N-1中的所有i- 如果S [i]为“ I”,则A [i] <A [i + 1] 否则,当S [i]为“ D”时,则A [