我有一个关于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);
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用.我应该使用正则表达式吗?因为我真的不知道如何使用正则表达式方法.
任何帮助将不胜感激,谢谢!
Paŭ*_*ann 45
该方法的第二种变体indexOf
采用start-index作为参数.
i = str.indexOf('x');
while(i >= 0) {
System.out.println(i);
i = str.indexOf('x', i+1);
}
Run Code Online (Sandbox Code Playgroud)
Nik*_*bak 11
还有另一个版本的indexOf
方法,fromIndex
作为参数.
因此,您可以在循环中调用它,每次prevPosition + 1
作为第二个参数传递.
文档:http:
//download.oracle.com/javase/6/docs/api/java/lang/String.html#indexOf(int,int)
归档时间: |
|
查看次数: |
44104 次 |
最近记录: |