Eric - 1 year ago 94

Java Question

I had a question about the indexOf method. I want to find multiple cases of "X" in a string.

Suppose my string is "x is x is x is x", I want to find x in all of its index positions.

But how do you do this for multiple cases? Is this even possible with indexOf?

I did int temp = str.indexOf('x');

It find the first x. I tried to do a for loop where i is initialized to length of string and this did not work since I kept finding the first x over and over.

`for (int y = temp1; y >= 0;y-- )`

{

int temp = str.indexOf('x');

System.out.println(temp);

}

But this does not work. Am I supposed to use regex? Because I don't really know how to use regex method.

Any help would be appreciated, thanks!

Answer

There is a second variant of the `indexOf`

method, which takes a start-index as a parameter.

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

Source (Stackoverflow)